<SEC-DOCUMENT>0001370416-25-000032.txt : 20251001
<SEC-HEADER>0001370416-25-000032.hdr.sgml : 20251001
<ACCEPTANCE-DATETIME>20251001171727
ACCESSION NUMBER:		0001370416-25-000032
CONFORMED SUBMISSION TYPE:	6-K/A
PUBLIC DOCUMENT COUNT:		87
CONFORMED PERIOD OF REPORT:	20250630
FILED AS OF DATE:		20251001
DATE AS OF CHANGE:		20251001

FILER:

	COMPANY DATA:	
		COMPANY CONFORMED NAME:			WESTPORT FUEL SYSTEMS INC.
		CENTRAL INDEX KEY:			0001370416
		STANDARD INDUSTRIAL CLASSIFICATION:	ENGINES & TURBINES [3510]
		ORGANIZATION NAME:           	06 Technology
		EIN:				000000000

	FILING VALUES:
		FORM TYPE:		6-K/A
		SEC ACT:		1934 Act
		SEC FILE NUMBER:	001-34152
		FILM NUMBER:		251365570

	BUSINESS ADDRESS:	
		STREET 1:		1691 WEST 75TH AVENUE
		CITY:			VANCOUVER
		STATE:			A1
		ZIP:			V6P6G2
		BUSINESS PHONE:		6047182000

	MAIL ADDRESS:	
		STREET 1:		1691 WEST 75TH AVENUE
		CITY:			VANCOUVER
		STATE:			A1
		ZIP:			V6P6G2

	FORMER COMPANY:	
		FORMER CONFORMED NAME:	WESTPORT INNOVATIONS INC
		DATE OF NAME CHANGE:	20060726
</SEC-HEADER>
<DOCUMENT>
<TYPE>6-K/A
<SEQUENCE>1
<FILENAME>wprt-20250630_d2.htm
<DESCRIPTION>6-K/A
<TEXT>
<XBRL>
<?xml version='1.0' encoding='ASCII'?>
<!--XBRL Document Created with the Workiva Platform-->
<!--Copyright 2025 Workiva-->
<!--r:ad297659-f296-4abb-b3c8-4f222db3fa0c,g:5bd34070-f794-402d-a468-34e565af0565,d:021f14db8e0a47a88679a76a8f063e6a-->
<html xmlns:wprt="http://www.westport.com/20250630" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:ix="http://www.xbrl.org/2013/inlineXBRL" xmlns:srt="http://fasb.org/srt/2025" xmlns="http://www.w3.org/1999/xhtml" xmlns:dei="http://xbrl.sec.gov/dei/2025" xmlns:us-gaap="http://fasb.org/us-gaap/2025" xmlns:currency="http://xbrl.sec.gov/currency/2025" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ixt="http://www.xbrl.org/inlineXBRL/transformation/2020-02-12" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:iso4217="http://www.xbrl.org/2003/iso4217" xmlns:ixt-sec="http://www.sec.gov/inlineXBRL/transformation/2015-08-31" xml:lang="en-US"><head><meta http-equiv="Content-Type" content="text/html"/>


<title>wprt-20250630_d2</title></head><body><div id="i021f14db8e0a47a88679a76a8f063e6a_1"></div><div style="min-height:48.96pt;width:100%"><div><span><br/></span></div></div><div style="margin-top:4.5pt;padding-left:29.5pt;padding-right:29.5pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:13.5pt;font-weight:400;line-height:1.20pt">UNITED STATES</span></div><div style="margin-top:0.25pt;padding-left:27pt;padding-right:32pt"><span><br/></span></div><div style="margin-top:0.05pt;padding-left:29.5pt;padding-right:29.5pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:13.5pt;font-weight:400;line-height:120%">SECURITIES AND EXCHANGE COMMISSION</span></div><div style="margin-top:0.25pt;padding-left:27pt;padding-right:32pt"><span><br/></span></div><div style="padding-left:29.5pt;padding-right:29.5pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:13.5pt;font-weight:400;line-height:219%">Washington, D.C. 20549</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:13.5pt;font-weight:700;line-height:219%"> </span></div><div style="padding-left:29.5pt;padding-right:29.5pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:13.5pt;font-weight:700;line-height:219%">FORM <ix:nonNumeric contextRef="c-1" name="dei:DocumentType" id="f-1387">6-K/A</ix:nonNumeric></span></div><div style="margin-top:0.4pt;padding-left:29.5pt;padding-right:29.5pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:11.5pt;font-weight:400;line-height:119%">REPORT OF FOREIGN PRIVATE ISSUER PURSUANT TO RULE 13a-16 OR 15d-16 UNDER THE SECURITIES EXCHANGE ACT OF 1934</span></div><div style="margin-top:0.45pt;padding-left:27pt;padding-right:32pt"><span><br/></span></div><div style="padding-left:29.5pt;padding-right:29.5pt;text-align:center;text-indent:-0.05pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:11.5pt;font-weight:700;line-height:219%">For the month of October 2025</span></div><div style="padding-left:29.5pt;padding-right:29.5pt;text-align:center;text-indent:-0.05pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:11.5pt;font-weight:400;line-height:219%">Commission File Number: </span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:11.5pt;font-weight:700;line-height:219%">001-34152 </span></div><div style="padding-left:29.17pt;padding-right:29.17pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:11.5pt;font-weight:700;line-height:120%"><ix:nonNumeric contextRef="c-1" name="dei:EntityRegistrantName" id="f-1388">WESTPORT FUEL SYSTEMS INC.</ix:nonNumeric></span></div><div style="padding-left:29.52pt;padding-right:29.52pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:11.5pt;font-weight:400;line-height:120%">(Translation of registrant's name into English)</span></div><div style="margin-top:0.25pt;padding-left:27pt;padding-right:32pt"><span><br/></span></div><div style="margin-top:0.05pt;padding-left:29.5pt;padding-right:29.5pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:11.5pt;font-weight:700;line-height:120%">1691 West 75th Avenue, Vancouver, British Columbia, Canada, V6P 6P2</span></div><div style="padding-left:29.5pt;padding-right:29.5pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:11.5pt;font-weight:400;line-height:120%">(Address of principal executive office)</span></div><div style="margin-top:0.5pt;padding-left:27pt;padding-right:32pt"><span><br/></span></div><div style="padding-left:27pt;padding-right:32pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:273%">Indicate by check mark whether the registrant files or will file annual reports under cover of Form 20-F or Form 40-F. </span></div><div style="padding-left:27pt;padding-right:32pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:273%">Form 20-F [X]&#160;&#160;&#160;&#160;Form 40-F [  ]</span></div><div style="margin-top:0.35pt;padding-left:27pt;padding-right:32pt"><span><br/></span></div><div style="height:48.96pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><span><br/></span></div></div></div><hr style="page-break-after:always"/><div style="min-height:48.96pt;width:100%"><div><span><br/></span></div></div><div style="padding-left:27pt;padding-right:32pt"><span><br/></span></div><ix:nonNumeric contextRef="c-1" name="dei:AmendmentDescription" id="f-1389"><div style="margin-top:0.35pt;padding-left:27pt;padding-right:32pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:11.5pt;font-weight:700;line-height:120%">INFORMATION CONTAINED IN THIS REPORT ON 6-K/A</span></div><div style="margin-top:0.15pt;padding-left:27pt;padding-right:32pt"><span><br/></span></div><div style="padding-left:27pt;padding-right:32pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:120%">This Report on Form 6-K/A (the &#8220;Amendment&#8221;) amends the Report on Form 6-K filed on August 11, 2025 (the &#8220;Original 6-K&#8221;) containing the Condensed Consolidated Interim Financial Statements of Westport Fuel Systems, Inc., (the &#8220;Company&#8221;) for the three and six months ended June 30, 2025 and 2024. The purpose of this Amendment is solely to provide the Company&#8217;s Condensed Consolidated Interim Financial Statements for the three and six months ended June 30, 2025 and 2024 formatted in Inline eXtensible Business Reporting Language (&#8220;iXBRL&#8221;) in accordance with Rule 405 of Regulation S-T and paragraph C.(6)(a)(ii) of the General Instructions to Form 6-K, attached hereto as Exhibit 99.1. Such Condensed Consolidated Interim Financial Statements were previously filed without iXBRL as Exhibit 99.2 to the Original 6-K. </span></div><div style="padding-left:27pt;padding-right:32pt;text-align:justify"><span><br/></span></div><div style="padding-left:27pt;padding-right:32pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:120%">Except as described above, this Amendment speaks as of the original filing date of the Original 6-K and does not amend, update or restate any information set forth in the Original 6-K or reflect any events that occurred subsequent to the original filing date of the Original 6-K. </span></div><div style="padding-left:27pt;padding-right:32pt;text-align:justify"><span><br/></span></div><div style="padding-left:27pt;padding-right:32pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:120%">The information contained in this Form 6-K, including Exhibits 99.1, is hereby incorporated by reference into the Company&#8217;s Registration Statement on Form F-3 (File No. 333-289669) and the registration statement on Form S-8, as amended (Registration No. 333-248912).</span></div></ix:nonNumeric><div style="padding-left:27pt;padding-right:32pt"><span><br/></span></div><div style="margin-top:0.3pt;padding-right:32pt"><span><br/></span></div><div style="padding-left:27pt;padding-right:32pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:11.5pt;font-weight:700;line-height:120%">EXHIBIT INDEX</span></div><div style="margin-top:0.2pt;padding-left:27pt;padding-right:32pt"><span><br/></span></div><div style="padding-left:27pt;padding-right:32pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:90.129%"><tr><td style="width:1.0%"/><td style="width:8.070%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:89.730%"/><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',serif;font-size:9pt;font-weight:700;line-height:100%;text-decoration:underline">Exhibits</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:700;line-height:100%;text-decoration:underline">Descriptions</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#0000ff;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:100%;text-decoration:underline" href="wprt-20250630.htm">99.1</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-right:32pt"><span style="color:#0000ff;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:120%;text-decoration:underline" href="wprt-20250630.htm">CONDENSED CONSOLIDATED FINANCIAL STATEMENTS FOR THE PERIOD ENDED JUNE </a><a style="color:#0000ff;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:120%;text-decoration:underline" href="wprt-20250630.htm">3</a><a style="color:#0000ff;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:120%;text-decoration:underline" href="wprt-20250630.htm">0, 2025</a></span></div></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',serif;font-size:9pt;font-weight:400;line-height:100%">101</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-right:32pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:120%">INS XBRL Instance Document</span></div></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',serif;font-size:9pt;font-weight:400;line-height:100%">101</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-right:32pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:120%">SCH Inline XBRL Taxonomy Extension Schema Document</span></div></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',serif;font-size:9pt;font-weight:400;line-height:100%">101</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-right:32pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:120%">SCH Inline XBRL Taxonomy Extension Calculation Linkbase Document</span></div></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',serif;font-size:9pt;font-weight:400;line-height:100%">101</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-right:32pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:120%">DEF Inline XBRL Taxonomy Extension Definition Linkbase Document</span></div></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',serif;font-size:9pt;font-weight:400;line-height:100%">101</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-right:32pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:120%">LAB Inline XBRL Taxonomy Extension Label Linkbase Document</span></div></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',serif;font-size:9pt;font-weight:400;line-height:100%">101</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-right:32pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:120%">PRE Inline XBRL Taxonomy Extension Presentation Linkbase Document</span></div></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',serif;font-size:9pt;font-weight:400;line-height:100%">104</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-right:32pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:120%">Cover Page Interactive Data File( formatted as Inline XBRL and contained in Exhibit 101)</span></div></td></tr><tr style="height:3pt"><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"/></tr></table></div><div style="height:48.96pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><span><br/></span></div></div></div><div id="i021f14db8e0a47a88679a76a8f063e6a_4"></div><hr style="page-break-after:always"/><div style="min-height:48.96pt;width:100%"><div><span><br/></span></div></div><div style="margin-top:0.25pt;padding-left:27pt;padding-right:32pt"><span><br/></span></div><div style="margin-top:0.2pt;padding-right:32pt"><span><br/></span></div><div style="margin-top:4.5pt;padding-left:29.5pt;padding-right:29.5pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:11.5pt;font-weight:700;line-height:120%">SIGNATURES</span></div><div style="margin-top:0.3pt;padding-left:27pt;padding-right:32pt"><span><br/></span></div><div style="margin-top:0.05pt;padding-left:27pt;padding-right:32pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;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="padding-left:29.5pt;padding-right:29.5pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%;text-decoration:underline">    Westport Fuel Systems Inc. </span></div><div style="margin-top:0.4pt;padding-left:29.5pt;padding-right:29.5pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">(Registrant)</span></div><div style="padding-left:27pt;padding-right:32pt"><span><br/></span></div><div style="margin-top:0.5pt;padding-left:27pt;padding-right:32pt"><span><br/></span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:95.114%"><tr><td style="width:1.0%"/><td style="width:59.175%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:4.968%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:32.557%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt 2px 23.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:100%">Date: October 1, 2025</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;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',serif;font-size:9pt;font-weight:400;line-height:100%">/s/ Elizabeth Owens</span></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',serif;font-size:9pt;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',serif;font-size:9pt;font-weight:400;line-height:100%">Name:</span></td><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:100%">Elizabeth Owens</span></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',serif;font-size:9pt;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',serif;font-size:9pt;font-weight:400;line-height:100%">Title:</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:100%">Chief Financial Officer</span></td></tr></table></div><div><span><br/></span></div><div style="margin-top:0.05pt;padding-left:27pt;padding-right:32pt"><span><br/></span></div><div style="height:48.96pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><span><br/></span></div></div></div></body></html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-99.1
<SEQUENCE>2
<FILENAME>wprt-20250630.htm
<DESCRIPTION>EX-99.1
<TEXT>
<XBRL>
<?xml version='1.0' encoding='ASCII'?>
<!--XBRL Document Created with the Workiva Platform-->
<!--Copyright 2025 Workiva-->
<!--r:ad297659-f296-4abb-b3c8-4f222db3fa0c,g:5bd34070-f794-402d-a468-34e565af0565,d:608fb9ff67a8405292e36940766acecf-->
<html xmlns:iso4217="http://www.xbrl.org/2003/iso4217" xmlns="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:wprt="http://www.westport.com/20250630" xmlns:ixt="http://www.xbrl.org/inlineXBRL/transformation/2020-02-12" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:ix="http://www.xbrl.org/2013/inlineXBRL" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:us-gaap="http://fasb.org/us-gaap/2025" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:currency="http://xbrl.sec.gov/currency/2025" xmlns:ixt-sec="http://www.sec.gov/inlineXBRL/transformation/2015-08-31" xmlns:dei="http://xbrl.sec.gov/dei/2025" xmlns:srt="http://fasb.org/srt/2025" xml:lang="en-US"><head><meta http-equiv="Content-Type" content="text/html"/>


<title>wprt-20250630</title></head><body><div style="display:none"><ix:header><ix:hidden><ix:nonNumeric contextRef="c-1" name="dei:EntityCentralIndexKey" id="f-1">0001370416</ix:nonNumeric><ix:nonNumeric contextRef="c-1" name="dei:DocumentPeriodEndDate" format="ixt:date-month-day-year" id="f-2">6/30/2025</ix:nonNumeric><ix:nonNumeric contextRef="c-1" name="dei:AmendmentFlag" format="ixt:fixed-true" id="f-3">true</ix:nonNumeric><ix:nonNumeric contextRef="c-1" name="dei:CurrentFiscalYearEndDate" format="ixt:date-month-day" id="f-4">12/31</ix:nonNumeric><ix:nonNumeric contextRef="c-1" name="dei:DocumentFiscalYearFocus" id="f-5">2025</ix:nonNumeric><ix:nonNumeric contextRef="c-1" name="dei:DocumentFiscalPeriodFocus" id="f-6">Q2</ix:nonNumeric></ix:hidden><ix:references xml:lang="en-US"><link:schemaRef xlink:type="simple" xlink:href="wprt-20250630.xsd"/></ix:references><ix:resources><xbrli:unit id="usd"><xbrli:measure>iso4217:USD</xbrli:measure></xbrli:unit><xbrli:unit id="shares"><xbrli:measure>xbrli:shares</xbrli:measure></xbrli:unit><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:unit id="number"><xbrli:measure>xbrli:pure</xbrli:measure></xbrli:unit><xbrli:unit id="eur"><xbrli:measure>iso4217:EUR</xbrli:measure></xbrli:unit><xbrli:unit id="tranche"><xbrli:measure>wprt:tranche</xbrli:measure></xbrli:unit><xbrli:unit id="cadPerShare"><xbrli:divide><xbrli:unitNumerator><xbrli:measure>iso4217:CAD</xbrli:measure></xbrli:unitNumerator><xbrli:unitDenominator><xbrli:measure>xbrli:shares</xbrli:measure></xbrli:unitDenominator></xbrli:divide></xbrli:unit><xbrli:unit id="segment"><xbrli:measure>wprt:segment</xbrli:measure></xbrli:unit><xbrli:context id="c-1"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-2"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2025-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-3"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-4"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2025-04-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-5"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-6"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-7"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-8"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">wprt:EquitySecuritiesOtherOneMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-9"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-10"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-11"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-12"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-13"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-14"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">wprt:EquitySecuritiesOtherOneMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-15"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-16"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-17"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-18"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">wprt:EquitySecuritiesOtherOneMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-19"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-20"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-21"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-22"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2024-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-23"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-24"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">wprt:EquitySecuritiesOtherOneMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-25"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-26"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-27"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-28"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-29"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-30"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">wprt:EquitySecuritiesOtherOneMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-31"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-32"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-33"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-34"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">wprt:EquitySecuritiesOtherOneMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-35"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-36"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-37"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-38"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-39"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-04-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-40"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">wprt:EquitySecuritiesOtherOneMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-04-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-41"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-04-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-42"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-04-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-43"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-44"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">wprt:EquitySecuritiesOtherOneMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-45"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-46"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-47"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-48"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-49"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">wprt:EquitySecuritiesOtherOneMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-50"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-51"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-52"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-53"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-54"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">wprt:EquitySecuritiesOtherOneMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-55"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-56"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-57"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">wprt:CespiraJointVentureMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-58"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:DiscontinuedOperationsHeldforsaleMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-59"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-60"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2024-09-13</xbrli:startDate><xbrli:endDate>2024-09-13</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-61"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:DiscontinuedOperationsDisposedOfBySaleMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">wprt:LightDutyMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-07-29</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-62"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:CAD</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-63"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:CAD</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-64"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:CAD</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-04-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-65"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:CAD</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-66"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:CAD</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-67"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:CAD</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-68"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:EUR</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-69"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:EUR</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-70"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:EUR</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-04-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-71"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:EUR</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-72"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:EUR</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-73"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:EUR</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-74"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:CNY</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-75"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:CNY</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-76"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:CNY</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-04-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-77"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:CNY</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-78"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:CNY</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-79"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:CNY</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-80"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:PLN</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-81"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:PLN</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-82"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:PLN</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-04-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-83"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:PLN</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-84"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:PLN</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-85"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:PLN</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-86"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:SEK</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-87"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:SEK</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-88"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:SEK</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-04-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-89"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:SEK</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-90"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:SEK</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-91"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:SEK</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-92"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:INR</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-93"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:INR</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-94"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:INR</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-04-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-95"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:INR</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-96"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:INR</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-97"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:INR</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-98"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:ARS</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-99"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:ARS</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-100"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:ARS</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-04-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-101"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:ARS</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-102"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:ARS</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-103"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:ARS</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-104"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:DiscontinuedOperationsHeldforsaleMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">wprt:LightDutyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-04-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-105"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:DiscontinuedOperationsHeldforsaleMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">wprt:LightDutyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-106"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:DiscontinuedOperationsHeldforsaleMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">wprt:LightDutyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-107"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:DiscontinuedOperationsHeldforsaleMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">wprt:LightDutyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-108"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ShortTermDebtTypeAxis">us-gaap:LoansPayableMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-07-14</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-109"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:DiscontinuedOperationsDisposedOfBySaleMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">wprt:LightDutyMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-07-29</xbrli:startDate><xbrli:endDate>2025-07-29</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-110"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:DiscontinuedOperationsDisposedOfBySaleMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">wprt:LightDutyMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementScenarioAxis">srt:ScenarioForecastMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-09-01</xbrli:startDate><xbrli:endDate>2025-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-111"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:DiscontinuedOperationsHeldforsaleMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">wprt:LightDutyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-112"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:DiscontinuedOperationsHeldforsaleMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">wprt:LightDutyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-113"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-114"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-115"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">wprt:CumminsWestportIncMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-116"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">wprt:CumminsWestportIncMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-117"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">wprt:CespiraCanadaLPMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-118"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">wprt:CespiraCanadaLPMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-119"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">wprt:CespiraSwedenABMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-120"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">wprt:CespiraSwedenABMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-121"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">wprt:OtherEquityAccountedForInvesteesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-122"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">wprt:OtherEquityAccountedForInvesteesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-123"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:EquityMethodInvestmentNonconsolidatedInvesteeAxis">wprt:CespiraJointVentureMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-124"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:EquityMethodInvestmentNonconsolidatedInvesteeAxis">wprt:CespiraJointVentureMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-125"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:EquityMethodInvestmentNonconsolidatedInvesteeAxis">wprt:CespiraJointVentureMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-04-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-126"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:EquityMethodInvestmentNonconsolidatedInvesteeAxis">wprt:CespiraJointVentureMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-127"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:EquityMethodInvestmentNonconsolidatedInvesteeAxis">wprt:CespiraJointVentureMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-128"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:EquityMethodInvestmentNonconsolidatedInvesteeAxis">wprt:CespiraJointVentureMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-129"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">wprt:ComputerEquipmentAndSoftwareMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-130"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-131"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-132"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-133"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">wprt:ComputerEquipmentAndSoftwareMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-134"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-135"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-136"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-137"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">wprt:EDCLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-138"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">wprt:EDCLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-139"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-140"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">wprt:EDCLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-13</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-141"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">wprt:ShareUnitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-142"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">wprt:ShareUnitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-143"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">wprt:ShareUnitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-144"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">wprt:ShareUnitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-145"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">wprt:ShareUnitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-146"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">wprt:ShareUnitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-147"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-148"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-149"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">wprt:PerformanceStockUnitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-150"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">wprt:PerformanceStockUnitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-151"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">wprt:DeferredShareUnitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-152"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">wprt:DeferredShareUnitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-153"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-04-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-154"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-155"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-156"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-157"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-04-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-158"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-159"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-160"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-161"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-04-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-162"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-163"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-164"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-165"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingAndMarketingExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-04-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-166"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingAndMarketingExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-167"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingAndMarketingExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-168"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingAndMarketingExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-169"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">wprt:SalesOfGoodsServicesAndOtherIncomeMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">wprt:CespiraMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-04-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-170"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">wprt:SalesOfGoodsServicesAndOtherIncomeMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">wprt:CespiraMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-171"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">wprt:SalesOfGoodsServicesAndOtherIncomeMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">wprt:CespiraMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-172"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">wprt:SalesOfGoodsServicesAndOtherIncomeMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">wprt:CespiraMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-173"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">wprt:InventoryPurchasedServicesAndOtherExpensesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">wprt:CespiraMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-04-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-174"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">wprt:InventoryPurchasedServicesAndOtherExpensesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">wprt:CespiraMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-175"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">wprt:InventoryPurchasedServicesAndOtherExpensesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">wprt:CespiraMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-176"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">wprt:InventoryPurchasedServicesAndOtherExpensesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">wprt:CespiraMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-177"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">wprt:CespiraMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-178"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">wprt:CespiraMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-179"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">wprt:HighPressureControlsSystemsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-04-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-180"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">wprt:HeavyDutyOEMMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-04-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-181"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">wprt:CespiraMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-04-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-182"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-04-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-183"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">wprt:HighPressureControlsSystemsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-184"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">wprt:HeavyDutyOEMMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-185"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">wprt:CespiraMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-186"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-187"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">wprt:HighPressureControlsSystemsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-188"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">wprt:HeavyDutyOEMMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-189"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">wprt:CespiraMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-190"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-191"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">wprt:HighPressureControlsSystemsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-192"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">wprt:HeavyDutyOEMMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-193"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">wprt:CespiraMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-194"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-195"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">srt:ConsolidationEliminationsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-04-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-196"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-04-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-197"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">srt:ConsolidationEliminationsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-198"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-199"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">srt:ConsolidationEliminationsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-200"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-201"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">srt:ConsolidationEliminationsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-202"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-203"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueProductLineMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-04-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-204"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueProductLineMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-205"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueProductLineMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-206"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueProductLineMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-207"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AsiaMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueProductLineMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-04-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-208"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AsiaMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueProductLineMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-209"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AsiaMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueProductLineMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-210"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AsiaMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueProductLineMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-211"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AmericasMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueProductLineMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-04-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-212"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AmericasMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueProductLineMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-213"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AmericasMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueProductLineMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-214"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AmericasMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueProductLineMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-215"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">wprt:LightDutyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-216"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">wprt:LightDutyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-217"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">wprt:HighPressureControlsSystemsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-218"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">wprt:HighPressureControlsSystemsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-219"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">wprt:HeavyDutyOEMMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-220"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">wprt:HeavyDutyOEMMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-221"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-222"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-223"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="wprt:ContractualObligationsTypeAxis">us-gaap:AccountsPayableAndAccruedLiabilitiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-224"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="wprt:ContractualObligationsTypeAxis">us-gaap:AccountsPayableAndAccruedLiabilitiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-225"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="wprt:ContractualObligationsTypeAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="wprt:ContractualObligationsTypeAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-227"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="wprt:ContractualObligationsTypeAxis">wprt:OperatingLeaseExpensesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-228"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001370416</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="wprt:ContractualObligationsTypeAxis">wprt:OperatingLeaseExpensesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-06-30</xbrli:endDate></xbrli:period></xbrli:context></ix:resources></ix:header></div><div id="i608fb9ff67a8405292e36940766acecf_1"></div><div style="min-height:49.5pt;width:100%"><div><span><br/></span></div></div><div style="text-align:justify;text-indent:72pt"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Condensed Consolidated Interim Financial Statements (unaudited)</span></div><div style="text-align:justify;text-indent:72pt"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(Expressed in thousands of United States dollars)</span></div><div style="text-align:justify;text-indent:72pt"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-align:justify;text-indent:72pt"><span style="color:#000000;font-family:'Nexa Extra Bold',sans-serif;font-size:12pt;font-weight:700;line-height:120%">WESTPORT FUEL SYSTEMS INC.</span></div><div style="text-align:justify;text-indent:72pt"><span><br/></span></div><div style="text-align:justify;text-indent:72pt"><span><br/></span></div><div style="text-align:justify;text-indent:72pt"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For the three and six months ended June&#160;30, 2025 and 2024</span></div><div style="text-align:justify;text-indent:72pt"><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><span><br/></span></div></div></div><div id="i608fb9ff67a8405292e36940766acecf_16"></div><hr style="page-break-after:always"/><div style="min-height:94.5pt;width:100%"><div style="text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"/><td style="width:98.900%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Nexa Extra Bold',sans-serif;font-size:18pt;font-weight:700;line-height:100%">WESTPORT FUEL SYSTEMS INC.</span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Condensed Consolidated Interim Balance Sheets (unaudited)</span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(Expressed in thousands of United States dollars, except share amounts)</span></td></tr><tr><td colspan="3" style="border-bottom:2pt solid #000000;border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9pt;font-weight:400;line-height:100%">June&#160;30, 2025 and December&#160;31, 2024</span></div></td></tr></table></div></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:59.864%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.759%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.763%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">June 30, 2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:700;line-height:100%">Assets</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Current assets:</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Cash and cash equivalents (including restricted cash)</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="f-7">6,064</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="f-8">14,754</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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"/></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"/></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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Accounts receivable (note 6)</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:AccountsReceivableNetCurrent" format="ixt:num-dot-decimal" scale="3" id="f-9">16,580</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:AccountsReceivableNetCurrent" format="ixt:num-dot-decimal" scale="3" id="f-10">18,738</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Inventories (note 7)</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:InventoryNet" format="ixt:num-dot-decimal" scale="3" id="f-11">2,856</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:InventoryNet" format="ixt:num-dot-decimal" scale="3" id="f-12">6,668</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Prepaid expenses</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:PrepaidExpenseCurrent" scale="3" id="f-13">800</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:PrepaidExpenseCurrent" format="ixt:num-dot-decimal" scale="3" id="f-14">1,328</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Current assets held for sale (note 5)</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent" format="ixt:num-dot-decimal" scale="3" id="f-15">201,719</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent" format="ixt:num-dot-decimal" scale="3" id="f-16">128,398</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:700;line-height:100%">Total current assets</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:AssetsCurrent" format="ixt:num-dot-decimal" scale="3" id="f-17">228,019</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:AssetsCurrent" format="ixt:num-dot-decimal" scale="3" id="f-18">169,886</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"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Long-term investments (note 8)</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:LongTermInvestments" format="ixt:num-dot-decimal" scale="3" id="f-19">37,122</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:LongTermInvestments" format="ixt:num-dot-decimal" scale="3" id="f-20">36,866</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Property, plant and equipment (note 9)</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentNet" format="ixt:num-dot-decimal" scale="3" id="f-21">4,444</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentNet" format="ixt:num-dot-decimal" scale="3" id="f-22">3,120</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Operating lease right-of-use assets</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:OperatingLeaseRightOfUseAsset" format="ixt:num-dot-decimal" scale="3" id="f-23">1,942</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:OperatingLeaseRightOfUseAsset" scale="3" id="f-24">823</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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"/></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"/></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"/></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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Other long-term assets</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:OtherAssetsNoncurrent" scale="3" id="f-25">527</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:OtherAssetsNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-26">1,431</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Non-current assets held for sale (note 5)</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent" format="ixt:fixed-zero" scale="3" id="f-27">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-28">79,495</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:700;line-height:100%">Total assets</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="f-29">272,054</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="f-30">291,621</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"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:700;line-height:100%">Liabilities and shareholders&#8217; equity</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;border-top:3pt double #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;border-top:3pt double #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Current liabilities:</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Accounts payable and accrued liabilities (note 10)</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:AccountsPayableAndAccruedLiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="f-31">17,594</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:AccountsPayableAndAccruedLiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="f-32">19,435</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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"/></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"/></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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Current portion of operating lease liabilities (note 11)</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:OperatingLeaseLiabilityCurrent" scale="3" id="f-33">633</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:OperatingLeaseLiabilityCurrent" scale="3" id="f-34">288</ix:nonFraction>&#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"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Current portion of long-term debt (note 12)</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:LongTermDebtAndCapitalLeaseObligationsCurrent" format="ixt:num-dot-decimal" scale="3" id="f-35">3,905</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:LongTermDebtAndCapitalLeaseObligationsCurrent" format="ixt:num-dot-decimal" scale="3" id="f-36">3,905</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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"/></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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Current portion of warranty liability</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:ProductWarrantyAccrualClassifiedCurrent" format="ixt:num-dot-decimal" scale="3" id="f-37">1,155</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:ProductWarrantyAccrualClassifiedCurrent" format="ixt:num-dot-decimal" scale="3" id="f-38">1,152</ix:nonFraction>&#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"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Current liabilities held for sale (note 5)</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent" format="ixt:num-dot-decimal" scale="3" id="f-39">136,177</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent" format="ixt:num-dot-decimal" scale="3" id="f-40">84,488</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:700;line-height:100%">Total current liabilities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:LiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="f-41">159,464</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:LiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="f-42">109,268</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"/></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"/></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"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Long-term operating lease liabilities (note 11)</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:OperatingLeaseLiabilityNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-43">1,332</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:OperatingLeaseLiabilityNoncurrent" scale="3" id="f-44">548</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Long-term debt (note 12)</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:LongTermDebtAndCapitalLeaseObligations" scale="3" id="f-45">977</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:LongTermDebtAndCapitalLeaseObligations" format="ixt:num-dot-decimal" scale="3" id="f-46">2,932</ix:nonFraction>&#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"/><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"/></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"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Other long-term liabilities</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:OtherLiabilitiesNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-47">1,389</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:OtherLiabilitiesNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-48">1,388</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Long-term liabilities held for sale (note 5)</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent" format="ixt:fixed-zero" scale="3" id="f-49">&#8212;</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-50">40,460</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:700;line-height:100%">Total liabilities</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:Liabilities" format="ixt:num-dot-decimal" scale="3" id="f-51">163,162</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:Liabilities" format="ixt:num-dot-decimal" scale="3" id="f-52">154,596</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Shareholders&#8217; equity:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Share capital (note 13):</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Unlimited common and preferred shares, no par value</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:6.75pt"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-2" decimals="INF" name="us-gaap:CommonStockSharesOutstanding" format="ixt:num-dot-decimal" scale="0" id="f-53"><ix:nonFraction unitRef="shares" contextRef="c-2" decimals="INF" name="us-gaap:CommonStockSharesIssued" format="ixt:num-dot-decimal" scale="0" id="f-54">17,351,005</ix:nonFraction></ix:nonFraction></span><span style="color:#1f497d;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"> </span><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(2024 - <ix:nonFraction unitRef="shares" contextRef="c-3" decimals="INF" name="us-gaap:CommonStockSharesIssued" format="ixt:num-dot-decimal" scale="0" id="f-55"><ix:nonFraction unitRef="shares" contextRef="c-3" decimals="INF" name="us-gaap:CommonStockSharesOutstanding" format="ixt:num-dot-decimal" scale="0" id="f-56">17,282,934</ix:nonFraction></ix:nonFraction>) common shares issued and outstanding</span></div></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:CommonStockValue" format="ixt:num-dot-decimal" scale="3" id="f-57">1,246,643</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:CommonStockValue" format="ixt:num-dot-decimal" scale="3" id="f-58">1,245,805</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Other equity instruments</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="wprt:OtherEquityInstrument" format="ixt:num-dot-decimal" scale="3" id="f-59">9,027</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="wprt:OtherEquityInstrument" format="ixt:num-dot-decimal" scale="3" id="f-60">9,472</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Additional paid in capital</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:AdditionalPaidInCapitalCommonStock" format="ixt:num-dot-decimal" scale="3" id="f-61">11,516</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:AdditionalPaidInCapitalCommonStock" format="ixt:num-dot-decimal" scale="3" id="f-62">11,516</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Accumulated deficit</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" sign="-" name="us-gaap:RetainedEarningsAccumulatedDeficit" format="ixt:num-dot-decimal" scale="3" id="f-63">1,133,070</ix:nonFraction>)</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" sign="-" name="us-gaap:RetainedEarningsAccumulatedDeficit" format="ixt:num-dot-decimal" scale="3" id="f-64">1,096,275</ix:nonFraction>)</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:#dbdbdb;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Accumulated other comprehensive loss</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" sign="-" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" format="ixt:num-dot-decimal" scale="3" id="f-65">25,224</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" sign="-" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" format="ixt:num-dot-decimal" scale="3" id="f-66">33,493</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:700;line-height:100%">Total shareholders' equity</span></td><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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-67">108,892</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 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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-68">137,025</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"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 1.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:700;line-height:100%">Total liabilities and shareholders' equity</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:LiabilitiesAndStockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-69">272,054</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:LiabilitiesAndStockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-70">291,621</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Commitments and contingencies (note 15)</span></td><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"><ix:nonFraction unitRef="usd" contextRef="c-2" xsi:nil="true" name="us-gaap:CommitmentsAndContingencies" id="f-71"></ix:nonFraction></td><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"><ix:nonFraction unitRef="usd" contextRef="c-3" xsi:nil="true" name="us-gaap:CommitmentsAndContingencies" id="f-72"></ix:nonFraction></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Subsequent events (note 5)</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/></tr></table></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">See accompanying notes to condensed consolidated interim financial statements.</span></div><div style="margin-top:5pt"><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:41.965%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.002%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.848%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.228%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.573%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.684%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="border-bottom:1pt solid #ffffff;border-left:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Approved on behalf of the Board:</span></td><td colspan="3" style="border-bottom:1pt solid #ffffff;border-left:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Anthony Guglielmin</span></td><td colspan="3" style="border-bottom:1pt solid #ffffff;border-left:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Director</span></td><td colspan="3" style="border-bottom:1pt solid #ffffff;border-left:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Daniel Sceli</span></td><td colspan="3" style="border-bottom:1pt solid #ffffff;border-left:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-bottom:1pt solid #ffffff;border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Director</span></td></tr></table></div><div style="height:31.5pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="margin-bottom:6pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">1</span></div></div></div><div id="i608fb9ff67a8405292e36940766acecf_22"></div><hr style="page-break-after:always"/><div style="min-height:94.5pt;width:100%"><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:99.415%"><tr><td style="width:1.0%"/><td style="width:98.900%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Nexa Extra Bold',sans-serif;font-size:18pt;font-weight:700;line-height:100%">WESTPORT FUEL SYSTEMS INC.</span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Condensed Consolidated Interim Statements of Operations and Comprehensive Income (Loss) (unaudited)</span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(Expressed in thousands of United States dollars, except share and per share amounts)</span></td></tr><tr><td colspan="3" style="border-bottom:2pt solid #000000;border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;Three and six months ended June&#160;30, 2025 and 2024</span></div></td></tr></table></div><div><span><br/></span></div></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:52.993%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.823%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.572%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.572%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.572%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.578%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Three months ended June 30,</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Six months ended June 30,</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2024</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Revenue</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-73">12,498</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-74">14,109</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-75">19,821</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-76">28,537</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Cost of revenue</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="f-77">11,656</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="f-78">11,750</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="f-79">17,444</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="f-80">26,720</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Gross profit</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:GrossProfit" scale="3" id="f-81">842</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:GrossProfit" format="ixt:num-dot-decimal" scale="3" id="f-82">2,359</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:GrossProfit" format="ixt:num-dot-decimal" scale="3" id="f-83">2,377</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:GrossProfit" format="ixt:num-dot-decimal" scale="3" id="f-84">1,817</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Operating expenses:</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"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Research and development</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:ResearchAndDevelopmentExpense" format="ixt:num-dot-decimal" scale="3" id="f-85">1,574</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:ResearchAndDevelopmentExpense" format="ixt:num-dot-decimal" scale="3" id="f-86">3,460</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:ResearchAndDevelopmentExpense" format="ixt:num-dot-decimal" scale="3" id="f-87">2,867</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:ResearchAndDevelopmentExpense" format="ixt:num-dot-decimal" scale="3" id="f-88">7,809</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">General and administrative</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="f-89">4,106</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="f-90">5,720</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="f-91">6,778</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="f-92">12,915</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Sales and marketing</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:SellingAndMarketingExpense" scale="3" id="f-93">290</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:SellingAndMarketingExpense" scale="3" id="f-94">962</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:SellingAndMarketingExpense" scale="3" id="f-95">733</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:SellingAndMarketingExpense" format="ixt:num-dot-decimal" scale="3" id="f-96">2,083</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Foreign exchange (gain) loss</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:ForeignCurrencyTransactionGainLossBeforeTax" format="ixt:num-dot-decimal" scale="3" id="f-97">4,224</ix:nonFraction>)</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:ForeignCurrencyTransactionGainLossBeforeTax" scale="3" id="f-98">141</ix:nonFraction>)</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:ForeignCurrencyTransactionGainLossBeforeTax" format="ixt:num-dot-decimal" scale="3" id="f-99">5,427</ix:nonFraction>)</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" sign="-" name="us-gaap:ForeignCurrencyTransactionGainLossBeforeTax" format="ixt:num-dot-decimal" scale="3" id="f-100">1,795</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Depreciation and amortization</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:DepreciationAmortizationAndAccretionNet" scale="3" id="f-101">106</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:DepreciationAmortizationAndAccretionNet" scale="3" id="f-102">98</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:DepreciationAmortizationAndAccretionNet" scale="3" id="f-103">214</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:DepreciationAmortizationAndAccretionNet" scale="3" id="f-104">456</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:CostsAndExpenses" format="ixt:num-dot-decimal" scale="3" id="f-105">1,852</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:CostsAndExpenses" format="ixt:num-dot-decimal" scale="3" id="f-106">10,099</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:CostsAndExpenses" format="ixt:num-dot-decimal" scale="3" id="f-107">5,165</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:CostsAndExpenses" format="ixt:num-dot-decimal" scale="3" id="f-108">25,058</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"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Loss from continuing operations</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" sign="-" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="f-109">1,010</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" sign="-" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="f-110">7,740</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="f-111">2,788</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" sign="-" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="f-112">23,241</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:14pt"><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"/><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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Loss from investments accounted for by the equity method</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" sign="-" name="us-gaap:IncomeLossFromEquityMethodInvestments" format="ixt:num-dot-decimal" scale="3" id="f-113">3,686</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" sign="-" name="us-gaap:IncomeLossFromEquityMethodInvestments" format="ixt:num-dot-decimal" scale="3" id="f-114">1,102</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:IncomeLossFromEquityMethodInvestments" format="ixt:num-dot-decimal" scale="3" id="f-115">7,570</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" sign="-" name="us-gaap:IncomeLossFromEquityMethodInvestments" format="ixt:num-dot-decimal" scale="3" id="f-116">1,102</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Gain on deconsolidation</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:DeconsolidationGainOrLossAmount" format="ixt:fixed-zero" scale="3" id="f-117">&#8212;</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:DeconsolidationGainOrLossAmount" format="ixt:num-dot-decimal" scale="3" id="f-118">13,266</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:DeconsolidationGainOrLossAmount" format="ixt:fixed-zero" scale="3" id="f-119">&#8212;</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:DeconsolidationGainOrLossAmount" format="ixt:num-dot-decimal" scale="3" id="f-120">13,266</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Interest on long-term debt</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:InterestExpenseDebt" scale="3" id="f-121">166</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:InterestExpenseDebt" scale="3" id="f-122">288</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:InterestExpenseDebt" scale="3" id="f-123">358</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:InterestExpenseDebt" scale="3" id="f-124">603</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;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"/><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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Interest and other income (loss), net of bank charges</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" sign="-" name="us-gaap:InterestIncomeExpenseNonoperatingNet" scale="3" id="f-125">147</ix:nonFraction>)</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:InterestIncomeExpenseNonoperatingNet" scale="3" id="f-126">95</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:InterestIncomeExpenseNonoperatingNet" scale="3" id="f-127">502</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:InterestIncomeExpenseNonoperatingNet" scale="3" id="f-128">21</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Income (loss) before income taxes</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" sign="-" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-129">5,009</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-130">4,231</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-131">10,214</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" sign="-" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-132">11,659</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;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"/><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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Income tax expense</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:IncomeTaxExpenseBenefit" scale="3" id="f-133">44</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:IncomeTaxExpenseBenefit" scale="3" id="f-134">85</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:IncomeTaxExpenseBenefit" scale="3" id="f-135">134</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:IncomeTaxExpenseBenefit" scale="3" id="f-136">216</ix:nonFraction>&#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"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Net income (loss) from continuing operations</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" sign="-" name="us-gaap:IncomeLossFromContinuingOperations" format="ixt:num-dot-decimal" scale="3" id="f-137">5,053</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperations" format="ixt:num-dot-decimal" scale="3" id="f-138">4,146</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:IncomeLossFromContinuingOperations" format="ixt:num-dot-decimal" scale="3" id="f-139">10,348</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" sign="-" name="us-gaap:IncomeLossFromContinuingOperations" format="ixt:num-dot-decimal" scale="3" id="f-140">11,875</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Net income (loss) from discontinued operations (note 5)</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" sign="-" name="us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity" format="ixt:num-dot-decimal" scale="3" id="f-141">29,291</ix:nonFraction>)</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity" format="ixt:num-dot-decimal" scale="3" id="f-142">1,671</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity" format="ixt:num-dot-decimal" scale="3" id="f-143">26,447</ix:nonFraction>)</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity" format="ixt:num-dot-decimal" scale="3" id="f-144">4,044</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Net income (loss) for the period</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="f-145">34,344</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="f-146">5,817</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="f-147">36,795</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="f-148">7,831</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Other comprehensive income (loss):</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Cumulative translation adjustment</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:CumulativeTranslationAdjustmentNetOfTaxPeriodIncreaseDecrease" format="ixt:num-dot-decimal" scale="3" id="f-149">6,921</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" sign="-" name="us-gaap:CumulativeTranslationAdjustmentNetOfTaxPeriodIncreaseDecrease" format="ixt:num-dot-decimal" scale="3" id="f-150">1,212</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:CumulativeTranslationAdjustmentNetOfTaxPeriodIncreaseDecrease" format="ixt:num-dot-decimal" scale="3" id="f-151">10,562</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" sign="-" name="us-gaap:CumulativeTranslationAdjustmentNetOfTaxPeriodIncreaseDecrease" format="ixt:num-dot-decimal" scale="3" id="f-152">1,642</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Ownership share of equity method investments' other comprehensive loss</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" sign="-" name="us-gaap:OciEquityMethodInvestmentAfterTax" format="ixt:num-dot-decimal" scale="3" id="f-153">1,464</ix:nonFraction>)</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" sign="-" name="us-gaap:OciEquityMethodInvestmentAfterTax" scale="3" id="f-154">83</ix:nonFraction>)</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:OciEquityMethodInvestmentAfterTax" format="ixt:num-dot-decimal" scale="3" id="f-155">2,293</ix:nonFraction>)</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" sign="-" name="us-gaap:OciEquityMethodInvestmentAfterTax" scale="3" id="f-156">83</ix:nonFraction>)</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:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" format="ixt:num-dot-decimal" scale="3" id="f-157">5,457</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" format="ixt:num-dot-decimal" scale="3" id="f-158">1,295</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" format="ixt:num-dot-decimal" scale="3" id="f-159">8,269</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" format="ixt:num-dot-decimal" scale="3" id="f-160">1,725</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Comprehensive income (loss)</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" sign="-" name="us-gaap:ComprehensiveIncomeNetOfTax" format="ixt:num-dot-decimal" scale="3" id="f-161">28,887</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:ComprehensiveIncomeNetOfTax" format="ixt:num-dot-decimal" scale="3" id="f-162">4,522</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:ComprehensiveIncomeNetOfTax" format="ixt:num-dot-decimal" scale="3" id="f-163">28,526</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" sign="-" name="us-gaap:ComprehensiveIncomeNetOfTax" format="ixt:num-dot-decimal" scale="3" id="f-164">9,556</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"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;border-top:3pt double #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Net income (loss) per share:</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">From continuing operations - basic</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usdPerShare" contextRef="c-4" decimals="2" sign="-" name="us-gaap:IncomeLossFromContinuingOperationsPerBasicShare" scale="0" id="f-165">0.29</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="c-5" decimals="2" name="us-gaap:IncomeLossFromContinuingOperationsPerBasicShare" scale="0" id="f-166">0.24</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usdPerShare" contextRef="c-1" decimals="2" sign="-" name="us-gaap:IncomeLossFromContinuingOperationsPerBasicShare" scale="0" id="f-167">0.60</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usdPerShare" contextRef="c-6" decimals="2" sign="-" name="us-gaap:IncomeLossFromContinuingOperationsPerBasicShare" scale="0" id="f-168">0.69</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">From discontinued operations - basic</span></td><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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usdPerShare" contextRef="c-4" decimals="2" sign="-" name="us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare" scale="0" id="f-169">1.69</ix:nonFraction>)</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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="c-5" decimals="2" name="us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare" scale="0" id="f-170">0.10</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usdPerShare" contextRef="c-1" decimals="2" sign="-" name="us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare" scale="0" id="f-171">1.53</ix:nonFraction>)</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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="c-6" decimals="2" name="us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare" scale="0" id="f-172">0.23</ix:nonFraction>&#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"/><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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">From continuing operations - diluted</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usdPerShare" contextRef="c-4" decimals="2" sign="-" name="us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare" scale="0" id="f-173">0.29</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="c-5" decimals="2" name="us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare" scale="0" id="f-174">0.24</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usdPerShare" contextRef="c-1" decimals="2" sign="-" name="us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare" scale="0" id="f-175">0.60</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usdPerShare" contextRef="c-6" decimals="2" sign="-" name="us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare" scale="0" id="f-176">0.69</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">From discontinued operations - diluted</span></td><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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usdPerShare" contextRef="c-4" decimals="2" sign="-" name="us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare" scale="0" id="f-177">1.69</ix:nonFraction>)</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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="c-5" decimals="2" name="us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare" scale="0" id="f-178">0.10</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usdPerShare" contextRef="c-1" decimals="2" sign="-" name="us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare" scale="0" id="f-179">1.53</ix:nonFraction>)</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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="c-6" decimals="2" name="us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare" scale="0" id="f-180">0.23</ix:nonFraction>&#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"/><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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Net income (loss) per share</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usdPerShare" contextRef="c-4" decimals="2" sign="-" name="us-gaap:EarningsPerShareDiluted" scale="0" id="f-181"><ix:nonFraction unitRef="usdPerShare" contextRef="c-4" decimals="2" sign="-" name="us-gaap:EarningsPerShareBasic" scale="0" id="f-182">1.98</ix:nonFraction></ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="c-5" decimals="2" name="us-gaap:EarningsPerShareBasic" scale="0" id="f-183"><ix:nonFraction unitRef="usdPerShare" contextRef="c-5" decimals="2" name="us-gaap:EarningsPerShareDiluted" scale="0" id="f-184">0.34</ix:nonFraction></ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usdPerShare" contextRef="c-1" decimals="2" sign="-" name="us-gaap:EarningsPerShareBasic" scale="0" id="f-185"><ix:nonFraction unitRef="usdPerShare" contextRef="c-1" decimals="2" sign="-" name="us-gaap:EarningsPerShareDiluted" scale="0" id="f-186">2.12</ix:nonFraction></ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usdPerShare" contextRef="c-6" decimals="2" sign="-" name="us-gaap:EarningsPerShareDiluted" scale="0" id="f-187"><ix:nonFraction unitRef="usdPerShare" contextRef="c-6" decimals="2" sign="-" name="us-gaap:EarningsPerShareBasic" scale="0" id="f-188">0.45</ix:nonFraction></ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Weighted average common shares outstanding:</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:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</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:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Basic</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-4" decimals="0" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" format="ixt:num-dot-decimal" scale="0" id="f-189">17,338,288</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-5" decimals="0" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" format="ixt:num-dot-decimal" scale="0" id="f-190">17,239,460</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-1" decimals="0" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" format="ixt:num-dot-decimal" scale="0" id="f-191">17,330,527</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-6" decimals="0" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" format="ixt:num-dot-decimal" scale="0" id="f-192">17,230,000</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Diluted</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-bottom:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-4" decimals="0" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" format="ixt:num-dot-decimal" scale="0" id="f-193">17,338,288</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom: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-bottom:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-5" decimals="0" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" format="ixt:num-dot-decimal" scale="0" id="f-194">17,488,070</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom: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-bottom:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-1" decimals="0" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" format="ixt:num-dot-decimal" scale="0" id="f-195">17,330,527</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom: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-bottom:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-6" decimals="0" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" format="ixt:num-dot-decimal" scale="0" id="f-196">17,230,000</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom: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',serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">See accompanying notes to condensed consolidated interim financial statements.</span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="margin-bottom:6pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">2</span></div></div></div><div id="i608fb9ff67a8405292e36940766acecf_25"></div><hr style="page-break-after:always"/><div style="min-height:94.5pt;width:100%"><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:555.00pt"><tr><td style="width:1.0pt"/><td style="width:553.00pt"/><td style="width:1.0pt"/></tr><tr style="height:8pt"><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:0 1pt"/></tr><tr style="height:20pt"><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Nexa Extra Bold',sans-serif;font-size:18pt;font-weight:700;line-height:100%">WESTPORT FUEL SYSTEMS INC.</span></td></tr><tr style="height:15pt"><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Condensed Consolidated Interim Statements of Shareholders' Equity (unaudited)</span></td></tr><tr style="height:15pt"><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(Expressed in thousands of United States dollars, except share amounts)</span></td></tr><tr style="height:15pt"><td colspan="3" style="border-bottom:2pt solid #000000;border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;Three and six months ended June&#160;30, 2025 and 2024</span></div></td></tr></table></div></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:24.916%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.342%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.604%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.342%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.707%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.342%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.927%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.342%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.030%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.342%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.146%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.342%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.417%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.342%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.659%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:7pt;font-weight:400;line-height:100%">Common Shares Outstanding </span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:7pt;font-weight:400;line-height:100%">Share capital</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:7pt;font-weight:400;line-height:100%">Other equity instruments</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:7pt;font-weight:400;line-height:100%">Additional paid in capital</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:7pt;font-weight:400;line-height:100%">Accumulated deficit</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:7pt;font-weight:400;line-height:100%">Accumulated other comprehensive loss</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:7pt;font-weight:400;line-height:100%">Total shareholders' equity</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="39" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:7pt;font-weight:400;line-height:100%">Three months ended June 30, 2024</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">April 1, 2024</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-7" decimals="INF" name="us-gaap:CommonStockSharesOutstanding" format="ixt:num-dot-decimal" scale="0" id="f-197">17,223,154</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-7" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-198">1,245,408</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-8" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-199">9,134</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-200">11,516</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-201">1,088,082</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-202">31,275</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-12" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-203">146,701</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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"/><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="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Issuance of common shares on exercise of share units</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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-13" decimals="INF" name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation" format="ixt:num-dot-decimal" scale="0" id="f-204">35,210</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-13" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" scale="3" id="f-205">243</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-14" decimals="-3" sign="-" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" scale="3" id="f-206">243</ix:nonFraction>)</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:'Montserrat',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 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:'Montserrat',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 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:'Montserrat',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 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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" format="ixt:fixed-zero" scale="3" id="f-207">&#8212;</ix:nonFraction>&#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"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Stock-based compensation</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-14" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3" id="f-208">302</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3" id="f-209">302</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Net income for the period</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:'Montserrat',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 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:'Montserrat',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 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:'Montserrat',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 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:'Montserrat',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 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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-15" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="f-210">5,817</ix:nonFraction>&#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:'Montserrat',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 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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="f-211">5,817</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Other comprehensive loss</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-16" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" format="ixt:num-dot-decimal" scale="3" id="f-212">1,295</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" format="ixt:num-dot-decimal" scale="3" id="f-213">1,295</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">June 30, 2024</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-17" decimals="INF" name="us-gaap:CommonStockSharesOutstanding" format="ixt:num-dot-decimal" scale="0" id="f-214">17,258,364</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-17" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-215">1,245,651</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-18" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-216">9,193</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-19" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-217">11,516</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-20" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-218">1,082,265</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-21" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-219">32,570</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-22" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-220">151,525</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"/></tr><tr style="height:15pt"><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;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"/><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"/><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:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="39" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:7pt;font-weight:400;line-height:100%">Six months ended June 30, 2024</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">January 1, 2024</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-23" decimals="INF" name="us-gaap:CommonStockSharesOutstanding" format="ixt:num-dot-decimal" scale="0" id="f-221">17,174,502</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-23" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-222">1,244,539</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-24" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-223">9,672</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-25" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-224">11,516</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-26" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-225">1,074,434</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-27" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-226">30,845</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-28" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-227">160,448</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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"/><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="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Issuance of common shares on exercise of share units</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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-29" decimals="INF" name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation" format="ixt:num-dot-decimal" scale="0" id="f-228">83,862</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-29" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" format="ixt:num-dot-decimal" scale="3" id="f-229">1,112</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-30" decimals="-3" sign="-" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" format="ixt:num-dot-decimal" scale="3" id="f-230">1,112</ix:nonFraction>)</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:'Montserrat',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 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:'Montserrat',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 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:'Montserrat',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 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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" format="ixt:fixed-zero" scale="3" id="f-231">&#8212;</ix:nonFraction>&#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"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Stock-based compensation</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-30" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3" id="f-232">633</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3" id="f-233">633</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Net loss for the period</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:'Montserrat',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 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:'Montserrat',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 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:'Montserrat',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 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:'Montserrat',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 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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-31" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="f-234">7,831</ix:nonFraction>)</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:'Montserrat',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 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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="f-235">7,831</ix:nonFraction>)</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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Other comprehensive loss</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-32" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" format="ixt:num-dot-decimal" scale="3" id="f-236">1,725</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" format="ixt:num-dot-decimal" scale="3" id="f-237">1,725</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">June 30, 2024</span></td><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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-17" decimals="INF" name="us-gaap:CommonStockSharesOutstanding" format="ixt:num-dot-decimal" scale="0" id="f-238">17,258,364</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:8pt;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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-17" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-239">1,245,651</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:8pt;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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-18" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-240">9,193</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:8pt;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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-19" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-241">11,516</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:8pt;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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-20" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-242">1,082,265</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:8pt;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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-21" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-243">32,570</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:8pt;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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-22" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-244">151,525</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"/></tr><tr style="height:14pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="39" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:7pt;font-weight:400;line-height:100%">Three months ended June 30, 2025</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">April 1, 2025</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-33" decimals="INF" name="us-gaap:CommonStockSharesOutstanding" format="ixt:num-dot-decimal" scale="0" id="f-245">17,326,732</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-33" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-246">1,246,408</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-34" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-247">9,081</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-35" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-248">11,516</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-36" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-249">1,098,726</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-37" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-250">30,681</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-38" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-251">137,598</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Issuance of common shares on exercise of share units</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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-39" decimals="INF" name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation" format="ixt:num-dot-decimal" scale="0" id="f-252">24,273</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-39" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" scale="3" id="f-253">235</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-40" decimals="-3" sign="-" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" scale="3" id="f-254">235</ix:nonFraction>)</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:'Montserrat',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 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:'Montserrat',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 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:'Montserrat',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 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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" format="ixt:fixed-zero" scale="3" id="f-255">&#8212;</ix:nonFraction>&#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"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Stock-based compensation</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-40" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3" id="f-256">181</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3" id="f-257">181</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Net loss for the period</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:'Montserrat',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 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:'Montserrat',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 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:'Montserrat',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 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:'Montserrat',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 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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-41" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="f-258">34,344</ix:nonFraction>)</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:'Montserrat',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 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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="f-259">34,344</ix:nonFraction>)</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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Other comprehensive income</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-42" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" format="ixt:num-dot-decimal" scale="3" id="f-260">5,457</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" format="ixt:num-dot-decimal" scale="3" id="f-261">5,457</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">June 30, 2025</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-43" decimals="INF" name="us-gaap:CommonStockSharesOutstanding" format="ixt:num-dot-decimal" scale="0" id="f-262">17,351,005</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-43" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-263">1,246,643</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-44" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-264">9,027</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-45" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-265">11,516</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-46" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-266">1,133,070</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-47" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-267">25,224</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-268">108,892</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"/></tr><tr style="height:14pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000;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"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="39" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:7pt;font-weight:400;line-height:100%">Six months ended June 30, 2025</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">January 1, 2025</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-48" decimals="INF" name="us-gaap:CommonStockSharesOutstanding" format="ixt:num-dot-decimal" scale="0" id="f-269">17,282,934</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-48" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-270">1,245,805</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-49" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-271">9,472</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-50" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-272">11,516</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-51" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-273">1,096,275</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-52" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-274">33,493</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-275">137,025</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Issuance of common shares on exercise of share units</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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-53" decimals="INF" name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation" format="ixt:num-dot-decimal" scale="0" id="f-276">68,071</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-53" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" scale="3" id="f-277">838</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-54" decimals="-3" sign="-" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" scale="3" id="f-278">838</ix:nonFraction>)</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:'Montserrat',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 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:'Montserrat',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 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:'Montserrat',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 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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" format="ixt:fixed-zero" scale="3" id="f-279">&#8212;</ix:nonFraction>&#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"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Stock-based compensation</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-54" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3" id="f-280">393</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3" id="f-281">393</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Net loss for the period</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:'Montserrat',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 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:'Montserrat',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 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:'Montserrat',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 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:'Montserrat',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 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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-55" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="f-282">36,795</ix:nonFraction>)</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:'Montserrat',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 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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="f-283">36,795</ix:nonFraction>)</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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Other comprehensive income</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-56" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" format="ixt:num-dot-decimal" scale="3" id="f-284">8,269</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" format="ixt:num-dot-decimal" scale="3" id="f-285">8,269</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">June 30, 2025</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-43" decimals="INF" name="us-gaap:CommonStockSharesOutstanding" format="ixt:num-dot-decimal" scale="0" id="f-286">17,351,005</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 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:'Montserrat',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 #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-43" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-287">1,246,643</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 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:'Montserrat',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 #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-44" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-288">9,027</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 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:'Montserrat',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 #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-45" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-289">11,516</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 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:'Montserrat',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 #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-46" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-290">1,133,070</ix:nonFraction>)</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:'Montserrat',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 #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-47" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-291">25,224</ix:nonFraction>)</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:'Montserrat',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 #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-292">108,892</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"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><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"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">See accompanying notes to condensed consolidated interim financial statements.</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="margin-bottom:6pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">3</span></div></div></div><div id="i608fb9ff67a8405292e36940766acecf_28"></div><hr style="page-break-after:always"/><div style="min-height:94.5pt;width:100%"><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:99.415%"><tr><td style="width:1.0%"/><td style="width:98.900%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Nexa Extra Bold',sans-serif;font-size:18pt;font-weight:700;line-height:100%">WESTPORT FUEL SYSTEMS INC.</span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Condensed Consolidated Interim Statements of Cash Flows (unaudited)</span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(Expressed in thousands of United States dollars)</span></td></tr><tr><td colspan="3" style="border-bottom:2pt solid #000000;border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;Three and six months ended June&#160;30, 2025 and 2024</span></div></td></tr></table></div></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:54.747%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.572%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.572%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.841%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.848%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Three months ended June 30,</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Six months ended June 30,</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2024</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Operating activities:</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net income (loss) for the period from continuing operations</span></td><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:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" sign="-" name="us-gaap:IncomeLossFromContinuingOperations" format="ixt:num-dot-decimal" scale="3" id="f-293">5,053</ix:nonFraction>)</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:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperations" format="ixt:num-dot-decimal" scale="3" id="f-294">4,146</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:IncomeLossFromContinuingOperations" format="ixt:num-dot-decimal" scale="3" id="f-295">10,348</ix:nonFraction>)</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:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" sign="-" name="us-gaap:IncomeLossFromContinuingOperations" format="ixt:num-dot-decimal" scale="3" id="f-296">11,875</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="27" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Adjustments to reconcile net income (loss) to net cash used in continuing operating activities:</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Depreciation and amortization</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" scale="3" id="f-297">219</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" scale="3" id="f-298">169</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" scale="3" id="f-299">397</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" format="ixt:num-dot-decimal" scale="3" id="f-300">1,867</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Stock-based compensation expense</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:ShareBasedCompensation" scale="3" id="f-301">126</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:ShareBasedCompensation" scale="3" id="f-302">222</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:ShareBasedCompensation" scale="3" id="f-303">304</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:ShareBasedCompensation" scale="3" id="f-304">471</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Unrealized foreign exchange loss</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:ForeignCurrencyTransactionGainLossBeforeTax" format="ixt:num-dot-decimal" scale="3" id="f-305">4,224</ix:nonFraction>)</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:ForeignCurrencyTransactionGainLossBeforeTax" scale="3" id="f-306">141</ix:nonFraction>)</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:ForeignCurrencyTransactionGainLossBeforeTax" format="ixt:num-dot-decimal" scale="3" id="f-307">5,427</ix:nonFraction>)</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" sign="-" name="us-gaap:ForeignCurrencyTransactionGainLossBeforeTax" format="ixt:num-dot-decimal" scale="3" id="f-308">1,795</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Deferred income tax (recovery)</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" sign="-" name="us-gaap:DeferredIncomeTaxExpenseBenefit" scale="3" id="f-309">6</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:DeferredIncomeTaxExpenseBenefit" scale="3" id="f-310">9</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:DeferredIncomeTaxExpenseBenefit" scale="3" id="f-311">9</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:DeferredIncomeTaxExpenseBenefit" scale="3" id="f-312">20</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Loss from investments accounted for by the equity method</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" sign="-" name="us-gaap:IncomeLossFromEquityMethodInvestments" format="ixt:num-dot-decimal" scale="3" id="f-313">3,686</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" sign="-" name="us-gaap:IncomeLossFromEquityMethodInvestments" format="ixt:num-dot-decimal" scale="3" id="f-314">1,102</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:IncomeLossFromEquityMethodInvestments" format="ixt:num-dot-decimal" scale="3" id="f-315">7,570</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" sign="-" name="us-gaap:IncomeLossFromEquityMethodInvestments" format="ixt:num-dot-decimal" scale="3" id="f-316">1,102</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest on long-term debt</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:InterestExpenseLongTermDebt" scale="3" id="f-317">23</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:InterestExpenseLongTermDebt" scale="3" id="f-318">12</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:InterestExpenseLongTermDebt" scale="3" id="f-319">45</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:InterestExpenseLongTermDebt" scale="3" id="f-320">34</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:top"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Change in inventory write-downs</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:middle"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:InventoryWriteDown" scale="3" id="f-321">140</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:InventoryWriteDown" scale="3" id="f-322">307</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:InventoryWriteDown" scale="3" id="f-323">110</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:InventoryWriteDown" scale="3" id="f-324">503</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gain on deconsolidation</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:DeconsolidationGainOrLossAmount" format="ixt:fixed-zero" scale="3" id="f-325">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:DeconsolidationGainOrLossAmount" format="ixt:num-dot-decimal" scale="3" id="f-326">13,266</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:DeconsolidationGainOrLossAmount" format="ixt:fixed-zero" scale="3" id="f-327">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:DeconsolidationGainOrLossAmount" format="ixt:num-dot-decimal" scale="3" id="f-328">13,266</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Changes in operating assets and liabilities</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:IncreaseDecreaseInOperatingCapital" scale="3" id="f-329">533</ix:nonFraction>)</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInOperatingCapital" format="ixt:num-dot-decimal" scale="3" id="f-330">8,964</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:IncreaseDecreaseInOperatingCapital" format="ixt:num-dot-decimal" scale="3" id="f-331">6,869</ix:nonFraction>)</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInOperatingCapital" format="ixt:num-dot-decimal" scale="3" id="f-332">17,141</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Net cash provided by (used in) operating activities of continuing operations</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" sign="-" name="us-gaap:NetCashProvidedByUsedInOperatingActivitiesContinuingOperations" format="ixt:num-dot-decimal" scale="3" id="f-333">5,622</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:NetCashProvidedByUsedInOperatingActivitiesContinuingOperations" format="ixt:num-dot-decimal" scale="3" id="f-334">1,524</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:NetCashProvidedByUsedInOperatingActivitiesContinuingOperations" format="ixt:num-dot-decimal" scale="3" id="f-335">14,227</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" sign="-" name="us-gaap:NetCashProvidedByUsedInOperatingActivitiesContinuingOperations" format="ixt:num-dot-decimal" scale="3" id="f-336">2,208</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Net cash provided by (used in) operating activities of discontinued operations</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" sign="-" name="us-gaap:CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations" scale="3" id="f-337">582</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" sign="-" name="us-gaap:CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations" scale="3" id="f-338">25</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations" format="ixt:num-dot-decimal" scale="3" id="f-339">3,125</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations" format="ixt:num-dot-decimal" scale="3" id="f-340">3,849</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"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Investing activities:</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Purchase of property, plant and equipment</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" scale="3" id="f-341">822</ix:nonFraction>)</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="f-342">1,262</ix:nonFraction>)</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="f-343">1,395</ix:nonFraction>)</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="f-344">2,006</ix:nonFraction>)</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"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Proceeds from sale of investments</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:ProceedsFromSaleMaturityAndCollectionsOfInvestments" format="ixt:fixed-zero" scale="3" id="f-345">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:ProceedsFromSaleMaturityAndCollectionsOfInvestments" format="ixt:num-dot-decimal" scale="3" id="f-346">18,888</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:ProceedsFromSaleMaturityAndCollectionsOfInvestments" format="ixt:fixed-zero" scale="3" id="f-347">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:ProceedsFromSaleMaturityAndCollectionsOfInvestments" format="ixt:num-dot-decimal" scale="3" id="f-348">18,888</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Proceeds from holdback receivable (note 6)</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="wprt:ProceedsFromCollectionOfHoldbackReceivable" format="ixt:fixed-zero" scale="3" id="f-349">&#8212;</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="wprt:ProceedsFromCollectionOfHoldbackReceivable" format="ixt:fixed-zero" scale="3" id="f-350">&#8212;</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="wprt:ProceedsFromCollectionOfHoldbackReceivable" format="ixt:num-dot-decimal" scale="3" id="f-351">10,450</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="wprt:ProceedsFromCollectionOfHoldbackReceivable" format="ixt:fixed-zero" scale="3" id="f-352">&#8212;</ix:nonFraction>&#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"/><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:#dbdbdb;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Capital contributions to investments accounted for by the equity method</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:PaymentsToAcquireEquityMethodInvestments" format="ixt:num-dot-decimal" scale="3" id="f-353">4,185</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:PaymentsToAcquireEquityMethodInvestments" format="ixt:num-dot-decimal" scale="3" id="f-354">9,900</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:PaymentsToAcquireEquityMethodInvestments" format="ixt:num-dot-decimal" scale="3" id="f-355">8,871</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:PaymentsToAcquireEquityMethodInvestments" format="ixt:num-dot-decimal" scale="3" id="f-356">9,900</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Net cash provided by (used in) investing activities of continuing operations</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" sign="-" name="us-gaap:NetCashProvidedByUsedInInvestingActivitiesContinuingOperations" format="ixt:num-dot-decimal" scale="3" id="f-357">5,007</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:NetCashProvidedByUsedInInvestingActivitiesContinuingOperations" format="ixt:num-dot-decimal" scale="3" id="f-358">7,726</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:NetCashProvidedByUsedInInvestingActivitiesContinuingOperations" scale="3" id="f-359">184</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:NetCashProvidedByUsedInInvestingActivitiesContinuingOperations" format="ixt:num-dot-decimal" scale="3" id="f-360">6,982</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"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Net cash used in investing activities of discontinued operations</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" sign="-" name="us-gaap:CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations" scale="3" id="f-361">460</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" sign="-" name="us-gaap:CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations" format="ixt:num-dot-decimal" scale="3" id="f-362">1,902</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations" format="ixt:num-dot-decimal" scale="3" id="f-363">2,947</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" sign="-" name="us-gaap:CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations" format="ixt:num-dot-decimal" scale="3" id="f-364">5,916</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;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"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Financing activities:</span></td><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"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><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:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><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:#dbdbdb;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Repayments of operating lines of credit and long-term facilities</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:RepaymentsOfLongTermLinesOfCredit" format="ixt:num-dot-decimal" scale="3" id="f-365">1,000</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:RepaymentsOfLongTermLinesOfCredit" format="ixt:num-dot-decimal" scale="3" id="f-366">13,700</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:RepaymentsOfLongTermLinesOfCredit" format="ixt:num-dot-decimal" scale="3" id="f-367">2,000</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:RepaymentsOfLongTermLinesOfCredit" format="ixt:num-dot-decimal" scale="3" id="f-368">29,043</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Drawings on operating lines of credit and long-term facilities</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:middle"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:ProceedsFromLinesOfCredit" format="ixt:fixed-zero" scale="3" id="f-369">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:ProceedsFromLinesOfCredit" format="ixt:num-dot-decimal" scale="3" id="f-370">7,504</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:ProceedsFromLinesOfCredit" format="ixt:fixed-zero" scale="3" id="f-371">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:ProceedsFromLinesOfCredit" format="ixt:num-dot-decimal" scale="3" id="f-372">15,550</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Net cash used in financing activities of continuing operations</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" sign="-" name="us-gaap:NetCashProvidedByUsedInFinancingActivitiesContinuingOperations" format="ixt:num-dot-decimal" scale="3" id="f-373">1,000</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" sign="-" name="us-gaap:NetCashProvidedByUsedInFinancingActivitiesContinuingOperations" format="ixt:num-dot-decimal" scale="3" id="f-374">6,196</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:NetCashProvidedByUsedInFinancingActivitiesContinuingOperations" format="ixt:num-dot-decimal" scale="3" id="f-375">2,000</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" sign="-" name="us-gaap:NetCashProvidedByUsedInFinancingActivitiesContinuingOperations" format="ixt:num-dot-decimal" scale="3" id="f-376">13,493</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;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:'Montserrat',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Net cash used in financing activities of discontinued operations</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" sign="-" name="us-gaap:CashProvidedByUsedInFinancingActivitiesDiscontinuedOperations" format="ixt:num-dot-decimal" scale="3" id="f-377">3,176</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" sign="-" name="us-gaap:CashProvidedByUsedInFinancingActivitiesDiscontinuedOperations" format="ixt:num-dot-decimal" scale="3" id="f-378">2,704</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:CashProvidedByUsedInFinancingActivitiesDiscontinuedOperations" format="ixt:num-dot-decimal" scale="3" id="f-379">6,094</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" sign="-" name="us-gaap:CashProvidedByUsedInFinancingActivitiesDiscontinuedOperations" format="ixt:num-dot-decimal" scale="3" id="f-380">1,248</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"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Effect of foreign exchange on cash and cash equivalents</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="f-381">4,593</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" sign="-" name="us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="3" id="f-382">803</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="f-383">5,696</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" sign="-" name="us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="f-384">1,297</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;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:'Montserrat',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Net decrease in cash and cash equivalents</span></td><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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" sign="-" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" format="ixt:num-dot-decimal" scale="3" id="f-385">11,254</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 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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" sign="-" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" format="ixt:num-dot-decimal" scale="3" id="f-386">2,380</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 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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" format="ixt:num-dot-decimal" scale="3" id="f-387">16,263</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 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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" sign="-" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" format="ixt:num-dot-decimal" scale="3" id="f-388">13,331</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"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cash and cash equivalents, beginning of period (including restricted cash)</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-38" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" format="ixt:num-dot-decimal" scale="3" id="f-389">32,637</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-12" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" format="ixt:num-dot-decimal" scale="3" id="f-390">43,902</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" format="ixt:num-dot-decimal" scale="3" id="f-391">37,646</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-28" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" format="ixt:num-dot-decimal" scale="3" id="f-392">54,853</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Cash and cash equivalents, end of period (including restricted cash)</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" format="ixt:num-dot-decimal" scale="3" id="f-393">21,383</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-22" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" format="ixt:num-dot-decimal" scale="3" id="f-394">41,522</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" format="ixt:num-dot-decimal" scale="3" id="f-395">21,383</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-22" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" format="ixt:num-dot-decimal" scale="3" id="f-396">41,522</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"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Less: cash and cash equivalents from discontinued operations, end of period (including restricted cash)</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsDisposalGroupIncludingDiscontinuedOperations" format="ixt:num-dot-decimal" scale="3" id="f-397">15,319</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-22" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsDisposalGroupIncludingDiscontinuedOperations" format="ixt:num-dot-decimal" scale="3" id="f-398">28,048</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsDisposalGroupIncludingDiscontinuedOperations" format="ixt:num-dot-decimal" scale="3" id="f-399">15,319</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-22" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsDisposalGroupIncludingDiscontinuedOperations" format="ixt:num-dot-decimal" scale="3" id="f-400">28,048</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Cash and cash equivalents from continuing operations, end of period (including restricted cash)</span></td><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:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="f-401">6,064</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 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:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-22" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="f-402">13,474</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 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:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="f-403">6,064</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 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:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-22" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="f-404">13,474</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"/></tr></table></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="margin-bottom:6pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">4</span></div></div></div><div id="i608fb9ff67a8405292e36940766acecf_31"></div><hr style="page-break-after:always"/><div style="min-height:94.5pt;width:100%"><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:99.415%"><tr><td style="width:1.0%"/><td style="width:98.900%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Nexa Extra Bold',sans-serif;font-size:18pt;font-weight:700;line-height:100%">WESTPORT FUEL SYSTEMS INC.</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Condensed Consolidated Interim Statements of Cash Flows&#160;(unaudited)</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(Expressed in thousands of United States dollars)</span></td></tr><tr><td colspan="3" style="border-bottom:2pt solid #000000;border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;Three and six months ended June&#160;30, 2025 and 2024</span></div></td></tr></table></div><div><span><br/></span></div></div><div><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 style="width:47.433%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.363%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.216%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.776%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.780%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Supplementary information</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Three months ended June 30,</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Six months ended June 30,</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2024</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest paid</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:InterestPaidNet" scale="3" id="f-405">536</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:InterestPaidNet" scale="3" id="f-406">755</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:InterestPaidNet" format="ixt:num-dot-decimal" scale="3" id="f-407">1,182</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:InterestPaidNet" format="ixt:num-dot-decimal" scale="3" id="f-408">1,712</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Taxes paid, net of refunds</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:IncomeTaxesPaidNet" format="ixt:num-dot-decimal" scale="3" id="f-409">1,050</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:IncomeTaxesPaidNet" scale="3" id="f-410">17</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:IncomeTaxesPaidNet" format="ixt:num-dot-decimal" scale="3" id="f-411">1,406</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:IncomeTaxesPaidNet" scale="3" id="f-412">549</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Changes in operating assets and 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"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accounts receivable</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:IncreaseDecreaseInAccountsReceivable" format="ixt:num-dot-decimal" scale="3" id="f-413">8,160</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:IncreaseDecreaseInAccountsReceivable" scale="3" id="f-414">605</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:IncreaseDecreaseInAccountsReceivable" format="ixt:num-dot-decimal" scale="3" id="f-415">8,324</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInAccountsReceivable" format="ixt:num-dot-decimal" scale="3" id="f-416">16,663</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Inventories</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInInventories" format="ixt:num-dot-decimal" scale="3" id="f-417">5,879</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInInventories" format="ixt:num-dot-decimal" scale="3" id="f-418">5,679</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInInventories" format="ixt:num-dot-decimal" scale="3" id="f-419">3,770</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInInventories" format="ixt:num-dot-decimal" scale="3" id="f-420">5,951</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Prepaid expenses</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInPrepaidExpense" scale="3" id="f-421">600</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInPrepaidExpense" scale="3" id="f-422">177</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInPrepaidExpense" scale="3" id="f-423">920</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInPrepaidExpense" scale="3" id="f-424">157</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accounts payable and accrued liabilities</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" format="ixt:num-dot-decimal" scale="3" id="f-425">1,056</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" format="ixt:num-dot-decimal" scale="3" id="f-426">4,250</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" format="ixt:num-dot-decimal" scale="3" id="f-427">3,240</ix:nonFraction>)</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" format="ixt:num-dot-decimal" scale="3" id="f-428">4,532</ix:nonFraction>)</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:#dbdbdb;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Warranty liability</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="wprt:IncreaseDecreaseInWarrantyLiability" scale="3" id="f-429">92</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" sign="-" name="wprt:IncreaseDecreaseInWarrantyLiability" scale="3" id="f-430">537</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="wprt:IncreaseDecreaseInWarrantyLiability" scale="3" id="f-431">5</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" sign="-" name="wprt:IncreaseDecreaseInWarrantyLiability" format="ixt:num-dot-decimal" scale="3" id="f-432">1,098</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:IncreaseDecreaseInOperatingCapital" scale="3" id="f-433">533</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInOperatingCapital" format="ixt:num-dot-decimal" scale="3" id="f-434">8,964</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:IncreaseDecreaseInOperatingCapital" format="ixt:num-dot-decimal" scale="3" id="f-435">6,869</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInOperatingCapital" format="ixt:num-dot-decimal" scale="3" id="f-436">17,141</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"/></tr></table></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">See accompanying notes to condensed consolidated interim financial statements.</span></div><div><span><br/></span></div><div><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="margin-bottom:6pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">5</span></div></div></div><div id="i608fb9ff67a8405292e36940766acecf_34"></div><hr style="page-break-after:always"/><div style="min-height:94.5pt;width:100%"><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"/><td style="width:98.900%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Nexa Extra Bold',sans-serif;font-size:18pt;font-weight:700;line-height:100%">WESTPORT FUEL SYSTEMS INC.</span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Notes to Condensed Consolidated Interim Financial Statements (unaudited)<br/></span><span style="font-family:'Montserrat Medium',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><br/></span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(Expressed in thousands of United States dollars, except share and per share amounts)</span></td></tr><tr><td colspan="3" style="border-bottom:2pt solid #000000;border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;Three and six months ended June&#160;30, 2025 and 2024</span></div></td></tr></table></div></div><ix:nonNumeric contextRef="c-1" name="us-gaap:NatureOfOperations" id="f-437" escape="true"><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">1.          Company organization and operations:</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%"> </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:112%">Westport Fuel Systems Inc. (the &#8220;Company&#8221; or "Westport") was incorporated under the Business Corporations Act (Alberta) on March 20, 1995. Westport is a technology and innovation company. As a  supplier of alternative fuel, low-emissions transportation technologies, Westport designs, manufactures, and supplies components and systems that enable the transition from traditional fuels to cleaner energy solutions for heavy-duty commercial vehicles and other on- and off-road applications. The Company has a <ix:nonFraction unitRef="number" contextRef="c-57" decimals="2" name="us-gaap:EquityMethodInvestmentOwnershipPercentage" scale="-2" id="f-438">55</ix:nonFraction>% ownership in Cespira, a joint venture with Volvo Group ("Volvo") formed in 2024. Cespira is committed to advancing the development and commercialization of the HPDI</span><span style="color:#000000;font-family:'null',sans-serif;font-size:10pt;font-weight:400;line-height:112%">&#8482;</span><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:112%"> fuel system, a fully OEM-integrated gaseous fuel systems that enables heavy-duty diesel engines to operate with a range of clean-burning fuels including natural gas, renewable natural gas ("RNG"), hydrogen ("H2") and other alternative fuels. Westport supplies its products directly to original equipment manufacturers (&#8220;OEMs&#8221;) and Tier 1 and Tier 2 OEM suppliers.</span></div></ix:nonNumeric><div style="text-align:justify"><span><br/></span></div><div id="i608fb9ff67a8405292e36940766acecf_1540"></div><ix:nonNumeric contextRef="c-1" name="us-gaap:SubstantialDoubtAboutGoingConcernTextBlock" id="f-439" continuedAt="f-439-1" escape="true"><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:112%">2.          Liquidity and going concern:</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:112%">For the six months ended June 30, 2025, the Company reported operating losses of $<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="f-440">2,788</ix:nonFraction>. The Company continues to use cash to support its business activities and support the growth of Cespira. As at June&#160;30, 2025, the Company had cash and cash equivalents of $<ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="f-441">6,064</ix:nonFraction> in continuing operations ($<ix:nonFraction unitRef="usd" contextRef="c-58" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="f-442">21,383</ix:nonFraction> inclusive of cash and cash equivalents classified as held for sale) and long-term debt borrowed from Export Development Canada ("EDC") of $<ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:DebtLongtermAndShorttermCombinedAmount" format="ixt:num-dot-decimal" scale="3" id="f-443">4,882</ix:nonFraction>, net of deferred financing fees, of which $<ix:nonFraction unitRef="usd" contextRef="c-59" decimals="-3" name="us-gaap:LongTermDebtAndCapitalLeaseObligationsCurrent" format="ixt:num-dot-decimal" scale="3" id="f-444">3,905</ix:nonFraction></span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:112%"> </span><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:112%">was current. Under the term loan with EDC, the Company has a cash covenant with a consolidated cash requirement of $<ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="wprt:DebtInstrumentCovenantMinimumCashRequirement" format="ixt:num-dot-decimal" scale="3" id="f-445">15,000</ix:nonFraction>. If the Company's cash and cash equivalents fall below the minimum cash requirement, the Company may be required to repay the outstanding amount of the term loan.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:112%">On September 13, 2024, the Company announced an at-the-market equity offering program (the "ATM Program") that allows the Company to issue up to $<ix:nonFraction unitRef="shares" contextRef="c-60" decimals="-3" name="us-gaap:StockIssuedDuringPeriodSharesTreasuryStockReissued" format="ixt:num-dot-decimal" scale="3" id="f-446">35,000</ix:nonFraction> in common shares from treasury to the public from time to time, at the Company's discretion and subject to regulatory requirements. As at June&#160;30, 2025, no shares were issued from treasury. The Company's Base Shelf Prospectus expired in June 2025.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:115%">On July 29, 2025, the Company closed the sale of the Light-Duty segment to a wholly-owned investment vehicle of Heliaca Investments ("Purchaser"), a Netherlands based investment firm supported by Ramphastos Investments Management B.V., a prominent Dutch venture capital and private equity firm for net proceeds of approximately $<ix:nonFraction unitRef="usd" contextRef="c-61" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationConsideration" format="ixt:num-dot-decimal" scale="3" id="f-447">62,513</ix:nonFraction> (&#8364;<ix:nonFraction unitRef="eur" contextRef="c-61" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationConsideration" format="ixt:num-dot-decimal" scale="3" id="f-448">53,600</ix:nonFraction>) (refer to note 5 for details).</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:112%">In connection with preparing consolidated financial statements for each annual and interim reporting period, the Company is required to evaluate whether there are conditions or events, considered in aggregate, that raise substantial doubt about the Company&#8217;s ability to continue as a going concern within one year after the date the consolidated financial statements are issued. Substantial doubt exists when conditions and events, considered in aggregate, indicate that it is probable a company will be unable to meet its obligations as they become due within one year after the date the consolidated financial statements are issued. This evaluation initially does not take into consideration the potential mitigating effect of management&#8217;s plans and actions that have not been fully implemented as of the date the consolidated financial statements are issued. When substantial doubt exists, management evaluates whether the mitigating effect of its plans sufficiently alleviates substantial doubt about the Company&#8217;s ability to continue as a going concern. The mitigating effect of management&#8217;s plans, however, is only considered if both: (1) it is probable the plans will be effectively implemented within one year after the date the consolidated financial statements are issued; and (2) it is probable the plans, when implemented, will mitigate the relevant conditions or events that raise substantial doubt about the Company&#8217;s ability to continue as a going concern within one year after the date the consolidated financial statements are issued.</span></div></ix:nonNumeric><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="margin-bottom:6pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">6</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:94.5pt;width:100%"><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"/><td style="width:98.900%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Nexa Extra Bold',sans-serif;font-size:18pt;font-weight:700;line-height:100%">WESTPORT FUEL SYSTEMS INC.</span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Notes to Condensed Consolidated Interim Financial Statements (unaudited)<br/></span><span style="font-family:'Montserrat Medium',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><br/></span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(Expressed in thousands of United States dollars, except share and per share amounts)</span></td></tr><tr><td colspan="3" style="border-bottom:2pt solid #000000;border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;Three and six months ended June&#160;30, 2025 and 2024</span></div></td></tr></table></div></div><ix:continuation id="f-439-1"><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">2.          Liquidity and going concern (continued):</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Based on the Company's projected capital expenditures, debt servicing obligations and operating requirements under its current business plan, management is projecting that its existing cash and cash equivalents will not be sufficient to fund its operations through the next twelve months from the date of the issuance of these condensed consolidated interim financial statements ("interim financial statements"). These conditions raise substantial doubt about the Company's ability to continue as a going concern within one year after the date these interim financial statements are issued.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Management is currently evaluating several different options to improve Westport's liquidity position, including raising funds from the public markets, borrowing debt or other financing alternatives.  These plans are not final and are subject to market and other conditions not the Company's control. As such, there can be no assurances that Westport will be successful in obtaining sufficient funding. Accordingly, the Company concluded under the accounting standards that these plans do not alleviate the substantial doubt about Westport's ability to continue as a going concern.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">These interim financial statements have been prepared on a going concern basis, which contemplates the realization of assets and satisfaction of liabilities in the ordinary course of business. The interim financial statements do not include any adjustments related to the recoverability and classification of recorded asset amounts or the amounts and classification of liabilities that may be necessary if the Company were unable to continue as a going concern.</span></div></ix:continuation><div style="text-align:justify"><span><br/></span></div><div id="i608fb9ff67a8405292e36940766acecf_1558"></div><ix:nonNumeric contextRef="c-1" name="us-gaap:BasisOfAccounting" id="f-449" continuedAt="f-449-1" escape="true"><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:112%">3.          Basis of preparation:</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:112%"> </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(a)&#160;&#160;&#160;&#160;<ix:nonNumeric contextRef="c-1" name="us-gaap:BasisOfAccountingPolicyPolicyTextBlock" id="f-450" continuedAt="f-450-1" escape="true">Basis of presentation:</ix:nonNumeric></span></div><div><span><br/></span></div><ix:continuation id="f-450-1"><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:117%">The interim financial statements have been prepared by the Company and do not include all of the information and disclosures required by accounting principles generally accepted in the United States ("GAAP"). In the opinion of management, all normal recurring accruals and adjustments considered necessary for a fair presentation have been included. The results for the three and six months ended June 30, 2025 are not necessarily indicative of the results that may be expected for the year ending December&#160;31, 2025. The interim financial statements should be read in conjunction with the audited consolidated financial statements and notes to the consolidated financial statements for the year ended December&#160;31, 2024.</span></div><div><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:118%">The preparation of financial statements in conformity with GAAP requires management to make estimates and assumptions that affect the amounts reported in the interim financial statements and accompanying notes. Actual results could differ from those estimates. Certain prior period figures have been adjusted to conform to current period presentation in the interim financial statements.</span></div></ix:continuation><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(b)&#160;&#160;&#160;&#160;<ix:nonNumeric contextRef="c-1" name="us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" id="f-451" continuedAt="f-451-1" escape="true">Foreign currency translation:</ix:nonNumeric></span></div><div style="text-align:justify"><span><br/></span></div><ix:continuation id="f-451-1" continuedAt="f-451-2"><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company&#8217;s functional currency is the Canadian dollar and its reporting currency for its interim financial statement presentation is the United States dollar ("U.S. Dollar"). The functional currencies for the Company's significant subsidiaries include the following: U.S. Dollar, Canadian dollar, Euro, Argentina Peso, Chinese Renminbi (&#8220;RMB&#8221;) and Polish Zloty. The Company translates assets and liabilities of non-U.S. dollar functional currency operations using the period end exchange rates,&#160;shareholders&#8217; equity balances using the weighted average of historical exchange rates, and revenues and expenses using the monthly average rate for the period with the&#160;resulting exchange differences&#160;recognized in other comprehensive income (loss).&#160;</span></div></ix:continuation></ix:nonNumeric><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="margin-bottom:6pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',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:94.5pt;width:100%"><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"/><td style="width:98.900%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Nexa Extra Bold',sans-serif;font-size:18pt;font-weight:700;line-height:100%">WESTPORT FUEL SYSTEMS INC.</span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Notes to Condensed Consolidated Interim Financial Statements (unaudited)<br/></span><span style="font-family:'Montserrat Medium',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><br/></span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(Expressed in thousands of United States dollars, except share and per share amounts)</span></td></tr><tr><td colspan="3" style="border-bottom:2pt solid #000000;border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;Three and six months ended June&#160;30, 2025 and 2024</span></div></td></tr></table></div></div><ix:continuation id="f-449-1"><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">3.          Basis of preparation (continued):</span></div><div style="text-align:justify"><span><br/></span></div><ix:continuation id="f-451-2"><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Transactions that are denominated in currencies other than the functional currencies of the Company&#8217;s or its subsidiaries' operations are translated at the rates in effect on the date of the transaction.&#160;Foreign currency denominated monetary assets and liabilities are translated to the applicable functional currency&#160;at the exchange rates in effect on the balance sheet date. Non-monetary assets and liabilities are translated at the historical exchange rate. All foreign exchange gains and losses are recognized in the condensed consolidated interim statements of operations, except for the translation gains and losses arising from available-for-sale instruments, which are recorded through other comprehensive income (loss) until realized through disposal or impairment.</span></div></ix:continuation><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Except as otherwise noted, all amounts in these interim financial statements are presented in thousands of U.S. dollars. <ix:nonNumeric contextRef="c-1" name="wprt:ScheduleOfForeignCurrencyExchangeRateTranslationTableTextBlock" id="f-452" continuedAt="f-452-1" escape="true">For the periods presented, the Company used the following exchange rates:</ix:nonNumeric></span></div><ix:continuation id="f-452-1"><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"><tr><td style="width:1.0%"/><td style="width:20.339%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.381%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.381%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.381%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.381%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.381%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.386%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Period&#160;ended</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Average for the three months ended</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Average for the six months ended</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">June 30, 2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">December 31, 2024</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">June 30, 2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">June 30, 2024</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">June 30, 2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">June 30, 2024</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Canadian Dollar</span></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-62" decimals="2" name="us-gaap:ForeignCurrencyExchangeRateTranslation1" scale="0" id="f-453">1.36</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-63" decimals="2" name="us-gaap:ForeignCurrencyExchangeRateTranslation1" scale="0" id="f-454">1.44</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-64" decimals="2" name="wprt:AverageForeignCurrencyExchangeRateTranslation1" scale="0" id="f-455">1.38</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-65" decimals="2" name="wprt:AverageForeignCurrencyExchangeRateTranslation1" scale="0" id="f-456">1.37</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-66" decimals="2" name="wprt:AverageForeignCurrencyExchangeRateTranslation1" scale="0" id="f-457">1.41</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-67" decimals="2" name="wprt:AverageForeignCurrencyExchangeRateTranslation1" scale="0" id="f-458">1.37</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Euro</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-68" decimals="2" name="us-gaap:ForeignCurrencyExchangeRateTranslation1" scale="0" id="f-459">0.85</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-69" decimals="2" name="us-gaap:ForeignCurrencyExchangeRateTranslation1" scale="0" id="f-460">0.96</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-70" decimals="2" name="wprt:AverageForeignCurrencyExchangeRateTranslation1" scale="0" id="f-461">0.88</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-71" decimals="2" name="wprt:AverageForeignCurrencyExchangeRateTranslation1" scale="0" id="f-462">0.93</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-72" decimals="2" name="wprt:AverageForeignCurrencyExchangeRateTranslation1" scale="0" id="f-463">0.91</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-73" decimals="2" name="wprt:AverageForeignCurrencyExchangeRateTranslation1" scale="0" id="f-464">0.93</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">RMB</span></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-74" decimals="2" name="us-gaap:ForeignCurrencyExchangeRateTranslation1" scale="0" id="f-465">7.17</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-75" decimals="2" name="us-gaap:ForeignCurrencyExchangeRateTranslation1" scale="0" id="f-466">7.30</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-76" decimals="2" name="wprt:AverageForeignCurrencyExchangeRateTranslation1" scale="0" id="f-467">7.23</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-77" decimals="2" name="wprt:AverageForeignCurrencyExchangeRateTranslation1" scale="0" id="f-468">7.24</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-78" decimals="2" name="wprt:AverageForeignCurrencyExchangeRateTranslation1" scale="0" id="f-469">7.25</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-79" decimals="2" name="wprt:AverageForeignCurrencyExchangeRateTranslation1" scale="0" id="f-470">7.25</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Polish Zloty</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-80" decimals="2" name="us-gaap:ForeignCurrencyExchangeRateTranslation1" scale="0" id="f-471">3.61</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-81" decimals="2" name="us-gaap:ForeignCurrencyExchangeRateTranslation1" scale="0" id="f-472">4.12</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-82" decimals="2" name="wprt:AverageForeignCurrencyExchangeRateTranslation1" scale="0" id="f-473">3.75</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-83" decimals="2" name="wprt:AverageForeignCurrencyExchangeRateTranslation1" scale="0" id="f-474">3.99</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-84" decimals="2" name="wprt:AverageForeignCurrencyExchangeRateTranslation1" scale="0" id="f-475">3.87</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-85" decimals="2" name="wprt:AverageForeignCurrencyExchangeRateTranslation1" scale="0" id="f-476">4.01</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Swedish Krona</span></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-86" decimals="2" name="us-gaap:ForeignCurrencyExchangeRateTranslation1" scale="0" id="f-477">9.49</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-87" decimals="2" name="us-gaap:ForeignCurrencyExchangeRateTranslation1" scale="0" id="f-478">11.03</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-88" decimals="2" name="wprt:AverageForeignCurrencyExchangeRateTranslation1" scale="0" id="f-479">9.66</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-89" decimals="2" name="wprt:AverageForeignCurrencyExchangeRateTranslation1" scale="0" id="f-480">10.68</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-90" decimals="2" name="wprt:AverageForeignCurrencyExchangeRateTranslation1" scale="0" id="f-481">10.13</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-91" decimals="2" name="wprt:AverageForeignCurrencyExchangeRateTranslation1" scale="0" id="f-482">10.49</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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"/><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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Indian Rupee</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-92" decimals="2" name="us-gaap:ForeignCurrencyExchangeRateTranslation1" scale="0" id="f-483">85.75</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-93" decimals="2" name="us-gaap:ForeignCurrencyExchangeRateTranslation1" scale="0" id="f-484">85.60</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-94" decimals="2" name="wprt:AverageForeignCurrencyExchangeRateTranslation1" scale="0" id="f-485">85.56</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-95" decimals="2" name="wprt:AverageForeignCurrencyExchangeRateTranslation1" scale="0" id="f-486">83.42</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-96" decimals="2" name="wprt:AverageForeignCurrencyExchangeRateTranslation1" scale="0" id="f-487">86.09</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-97" decimals="2" name="wprt:AverageForeignCurrencyExchangeRateTranslation1" scale="0" id="f-488">83.48</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Argentina Peso</span></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-98" decimals="2" name="us-gaap:ForeignCurrencyExchangeRateTranslation1" format="ixt:num-dot-decimal" scale="0" id="f-489">1,192.11</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-99" decimals="2" name="us-gaap:ForeignCurrencyExchangeRateTranslation1" format="ixt:num-dot-decimal" scale="0" id="f-490">1,032.12</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-100" decimals="2" name="wprt:AverageForeignCurrencyExchangeRateTranslation1" format="ixt:num-dot-decimal" scale="0" id="f-491">1,145.65</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-101" decimals="2" name="wprt:AverageForeignCurrencyExchangeRateTranslation1" scale="0" id="f-492">885.31</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-102" decimals="2" name="wprt:AverageForeignCurrencyExchangeRateTranslation1" format="ixt:num-dot-decimal" scale="0" id="f-493">1,098.03</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-103" decimals="2" name="wprt:AverageForeignCurrencyExchangeRateTranslation1" scale="0" id="f-494">903.40</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div></ix:continuation><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(c)&#160;&#160;&#160;&#160;<ix:nonNumeric contextRef="c-1" name="wprt:HeldForSaleDisposalGroupAndDiscontinuedOperationsPolicyPolicyTextBlock" id="f-495" continuedAt="f-495-1" escape="true">Held-for-sale disposal group and discontinued operations:</ix:nonNumeric></span></div><div style="text-align:justify"><span><br/></span></div><ix:continuation id="f-495-1"><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company classifies a component of an entity as a held-for-sale disposal group when it has been disposed of during the period, or it has met all of the held-for-sale criteria under </span><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Topic 205 - Presentation of Financial Statements</span><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> at the balance sheet reporting date. Held-for-sale disposal groups are measured at the lower of its carrying amount and fair value less cost to sell. If the fair value less cost to sell is lower than its carrying amount, a loss is recognized to write down the carrying amount of the disposal group as a whole.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">After a disposal group has been classified as held-for-sale, management may decide to reverse its plan to divest, or circumstances may change so that the disposal group no longer meets the held-for-sale criteria. In such instances, the Company would reclassify the disposal group's assets and liabilities on the balance sheet as held-and-used and remeasure the assets on the date of reclassification.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A component that has been disposed of or is held-for-sale is reported in discontinued operations if its disposition represents a strategic shift and has (or will have) a major effect on the entity's operations and financial results. Discontinued operations are reported separately from the Company's continuing operations on the balance sheet, income statement, and statement of cash flows. For comparative purposes, the Company adjusted the prior periods presented in the interim financial statements to reflect the effect of operations discontinued in the current period. The Company's interim financial statements eliminated its intercompany balances with its discontinued operations as the intercompany balances will be settled upon disposal.</span></div></ix:continuation></ix:continuation><div style="margin-top:5pt"><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="margin-bottom:6pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">8</span></div></div></div><div id="i608fb9ff67a8405292e36940766acecf_37"></div><hr style="page-break-after:always"/><div style="min-height:94.5pt;width:100%"><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"/><td style="width:98.900%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Nexa Extra Bold',sans-serif;font-size:18pt;font-weight:700;line-height:100%">WESTPORT FUEL SYSTEMS INC.</span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Notes to Condensed Consolidated Interim Financial Statements (unaudited)<br/></span><span style="font-family:'Montserrat Medium',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><br/></span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(Expressed in thousands of United States dollars, except share and per share amounts)</span></td></tr><tr><td colspan="3" style="border-bottom:2pt solid #000000;border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;Three and six months ended June&#160;30, 2025 and 2024</span></div></td></tr></table></div></div><ix:nonNumeric contextRef="c-1" name="us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" id="f-496" escape="true"><div><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:700;line-height:120%">4.          New accounting pronouncements</span></div><div style="text-align:justify"><span><br/></span></div><ix:nonNumeric contextRef="c-1" name="us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock" id="f-497" escape="true"><div style="margin-bottom:6pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Upcoming accounting standards not yet adopted:</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In December 2023, the FASB issued ASU 2023-09, "Income Taxes (Topic 740): Improvements in Income Tax Disclosures" to enhance the transparency and decision usefulness of income tax disclosures. This amendment requires public companies to disclose specific categories in the rate reconciliation and provide additional information for reconciling items that meet a quantitative threshold. Additionally, under the amendment entities are required to disclose the amount of income taxes paid disaggregated by federal, state and foreign taxes, as well as disaggregated by material individual jurisdictions. Finally, the amendment requires entities to disclose income from continuing operations before income tax expense disaggregated between domestic and foreign and income tax expense from continuing operations disaggregated by federal, state and foreign. This guidance is effective for annual reporting periods beginning after December 15, 2024. While this guidance may have an impact on the disclosures, the Company does not expect this guidance to have a material impact on its  financial position, operations, and cash flows.</span></div><div><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In November 2024, the FASB issued ASU 2024-03, "Income Statement - Reporting Comprehensive Income - Expense Disaggregation Disclosures (Subtopic 220-40): Disaggregation of Income Statement Expenses." It requires entities to disclose, in the notes to the financial statements, specified information related to certain costs and expenses disaggregated by type. The standard improves transparency by providing more detailed information about the component of costs and expenses that would enable users to better understand the major components of an entity's income statement by referencing disclosures in the notes to financial statements. This guidance is effective for annual reporting periods beginning after December 15, 2026. While this guidance may have an impact on the disclosures, the Company does not expect this guidance to have a material impact on its  financial position, operations, and cash flows.</span></div></ix:nonNumeric></ix:nonNumeric><div style="text-align:justify"><span><br/></span></div><div id="i608fb9ff67a8405292e36940766acecf_46"></div><ix:nonNumeric contextRef="c-1" name="us-gaap:DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock" id="f-498" continuedAt="f-498-1" escape="true"><div><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">5.          Held-for-sale disposal group and discontinued operations:</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%"> </span></div><div><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On May 15, 2025, the Company held its Annual General and Special Meeting of Shareholders. At the meeting, shareholders approved management's plan to sell the Light-Duty segment in accordance with the terms of the sale and purchase agreement ("SPA") dated March 30, 2025.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As at June 30, 2025, the Company accounted for the Light-Duty segment as a held-for-sale disposal group and presented its financial position and operating results in discontinued operations for both the current and comparative periods. As part of the terms of the transaction, the long-term debt with UniCredit S.p.A., Deutsche Bank, Banca de Credito Cooperativo, and Rabobank in Westport Fuel Systems Italia S.r.l and its subsidiaries will remain with the disposal group. As a result of classifying the Light-Duty segment as held-for-sale, the Company recorded a write-down loss of $<ix:nonFraction unitRef="usd" contextRef="c-104" decimals="-3" name="us-gaap:DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax" format="ixt:num-dot-decimal" scale="3" id="f-499">30,183</ix:nonFraction> in discontinued operations.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Light-Duty's total additions to long-lived assets, excluding business combinations for the three and six months ended June 30, 2025 was $<ix:nonFraction unitRef="usd" contextRef="c-104" decimals="-3" name="wprt:DisposalGroupIncludingDiscontinuedOperationAdditionsToLongLivedAssets" format="ixt:num-dot-decimal" scale="3" id="f-500">1,620</ix:nonFraction> and $<ix:nonFraction unitRef="usd" contextRef="c-105" decimals="-3" name="wprt:DisposalGroupIncludingDiscontinuedOperationAdditionsToLongLivedAssets" format="ixt:num-dot-decimal" scale="3" id="f-501">3,926</ix:nonFraction>, respectively (three and six months ended June 30, 2024 was $<ix:nonFraction unitRef="usd" contextRef="c-106" decimals="-3" name="wprt:DisposalGroupIncludingDiscontinuedOperationAdditionsToLongLivedAssets" format="ixt:num-dot-decimal" scale="3" id="f-502">4,176</ix:nonFraction> and $<ix:nonFraction unitRef="usd" contextRef="c-107" decimals="-3" name="wprt:DisposalGroupIncludingDiscontinuedOperationAdditionsToLongLivedAssets" format="ixt:num-dot-decimal" scale="3" id="f-503">8,325</ix:nonFraction>).</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:115%">On July 14, 2025, the Company entered into a short-term loan with the Purchaser for $<ix:nonFraction unitRef="usd" contextRef="c-108" decimals="-3" name="us-gaap:DebtInstrumentFaceAmount" format="ixt:num-dot-decimal" scale="3" id="f-504">5,831</ix:nonFraction> (&#8364;<ix:nonFraction unitRef="eur" contextRef="c-108" decimals="-3" name="us-gaap:DebtInstrumentFaceAmount" format="ixt:num-dot-decimal" scale="3" id="f-505">5,000</ix:nonFraction>). The loan was subsequently repaid on July 29, 2025.</span></div></ix:nonNumeric><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="margin-bottom:6pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',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:94.5pt;width:100%"><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"/><td style="width:98.900%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Nexa Extra Bold',sans-serif;font-size:18pt;font-weight:700;line-height:100%">WESTPORT FUEL SYSTEMS INC.</span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Notes to Condensed Consolidated Interim Financial Statements (unaudited)<br/></span><span style="font-family:'Montserrat Medium',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><br/></span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(Expressed in thousands of United States dollars, except share and per share amounts)</span></td></tr><tr><td colspan="3" style="border-bottom:2pt solid #000000;border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;Three and six months ended June&#160;30, 2025 and 2024</span></div></td></tr></table></div></div><ix:continuation id="f-498-1" continuedAt="f-498-2"><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:400;line-height:115%">5.          Assets and liabilities held for sale (continued):</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:115%">On July 29, 2025, the Company closed the sale of its Light-Duty segment to the Purchaser. The transaction provided $<ix:nonFraction unitRef="usd" contextRef="c-61" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationConsideration" format="ixt:num-dot-decimal" scale="3" id="f-506">62,513</ix:nonFraction> (&#8364;<ix:nonFraction unitRef="eur" contextRef="c-61" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationConsideration" format="ixt:num-dot-decimal" scale="3" id="f-507">53,600</ix:nonFraction>) in net proceeds received as $<ix:nonFraction unitRef="usd" contextRef="c-109" decimals="-3" name="us-gaap:ProceedsFromDivestitureOfBusinesses" format="ixt:num-dot-decimal" scale="3" id="f-508">41,170</ix:nonFraction> (&#8364;<ix:nonFraction unitRef="eur" contextRef="c-109" decimals="-3" name="us-gaap:ProceedsFromDivestitureOfBusinesses" format="ixt:num-dot-decimal" scale="3" id="f-509">35,300</ix:nonFraction>) in initial cash proceeds, $<ix:nonFraction unitRef="usd" contextRef="c-110" decimals="-3" name="us-gaap:ProceedsFromDivestitureOfBusinesses" format="ixt:num-dot-decimal" scale="3" id="f-510">8,514</ix:nonFraction> (&#8364;<ix:nonFraction unitRef="eur" contextRef="c-110" decimals="-3" name="us-gaap:ProceedsFromDivestitureOfBusinesses" format="ixt:num-dot-decimal" scale="3" id="f-511">7,300</ix:nonFraction>) in deferred payments expected to be received in September 2025 and  $<ix:nonFraction unitRef="usd" contextRef="c-61" decimals="-3" name="wprt:DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrow" format="ixt:num-dot-decimal" scale="3" id="f-512">12,829</ix:nonFraction> (&#8364;<ix:nonFraction unitRef="eur" contextRef="c-61" decimals="-3" name="wprt:DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrow" format="ixt:num-dot-decimal" scale="3" id="f-513">11,000</ix:nonFraction>) in proceeds held in escrow. Net proceeds are after the deduction of net debt in the Light-Duty segment and certain other closing costs. Further, up to $<ix:nonFraction unitRef="usd" contextRef="c-109" decimals="-3" name="wprt:DisposalGroupIncludingDiscontinuedOperationEarnoutsMaximum" format="ixt:num-dot-decimal" scale="3" id="f-514">3,790</ix:nonFraction> (&#8364;<ix:nonFraction unitRef="eur" contextRef="c-109" decimals="-3" name="wprt:DisposalGroupIncludingDiscontinuedOperationEarnoutsMaximum" format="ixt:num-dot-decimal" scale="3" id="f-515">3,250</ix:nonFraction>) in potential earnouts are available if certain conditions are achieved in accordance with terms and conditions in the sale and purchase agreement. The proceeds held in escrow will be released to the Company in <ix:nonFraction unitRef="tranche" contextRef="c-61" decimals="INF" name="wprt:DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrowNumberOfTranches" format="ixt-sec:numwordsen" id="f-516">four</ix:nonFraction> tranches by year-end 2025, early 2026, early 2027 and mid-year 2027. Purchase price adjustments may impact the final proceeds received from the Purchaser and are customary in nature.</span></div><div style="text-align:justify"><span><br/></span></div><ix:nonNumeric contextRef="c-1" name="us-gaap:ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock" id="f-517" continuedAt="f-517-1" escape="true"><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Major assets and liabilities of the discontinued operations are as follows:</span></div><div style="text-align:justify"><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:60.303%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.613%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.616%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">June 30, 2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Cash</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-111" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="f-518">15,319</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-112" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="f-519">22,892</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Accounts receivable</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-111" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet" format="ixt:num-dot-decimal" scale="3" id="f-520">67,947</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-112" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet" format="ixt:num-dot-decimal" scale="3" id="f-521">54,316</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Inventories</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-111" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationInventoryCurrent" format="ixt:num-dot-decimal" scale="3" id="f-522">53,383</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-112" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationInventoryCurrent" format="ixt:num-dot-decimal" scale="3" id="f-523">46,858</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Prepaid expenses</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-111" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent" format="ixt:num-dot-decimal" scale="3" id="f-524">5,772</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-112" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent" format="ixt:num-dot-decimal" scale="3" id="f-525">4,332</ix:nonFraction>&#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:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-111" decimals="-3" name="us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent" format="ixt:num-dot-decimal" scale="3" id="f-526">142,421</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-112" decimals="-3" name="us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent" format="ixt:num-dot-decimal" scale="3" id="f-527">128,398</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Long-term investments</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-111" decimals="-3" name="wprt:DisposalGroupIncludingDiscontinuedOperationInvestmentsNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-528">3,331</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-112" decimals="-3" name="wprt:DisposalGroupIncludingDiscontinuedOperationInvestmentsNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-529">2,866</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Property, plant, and equipment</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-111" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-530">43,775</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-112" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-531">38,836</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Operating lease right-of-use asset</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-111" decimals="-3" name="wprt:DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAssetNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-532">21,744</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-112" decimals="-3" name="wprt:DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAssetNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-533">18,196</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Intangible assets</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-111" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-534">5,179</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-112" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-535">5,184</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Deferred income tax assets</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-111" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationDeferredTaxAssets" format="ixt:num-dot-decimal" scale="3" id="f-536">10,196</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-112" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationDeferredTaxAssets" format="ixt:num-dot-decimal" scale="3" id="f-537">9,695</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Goodwill</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-111" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationGoodwillNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-538">3,257</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-112" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationGoodwillNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-539">2,876</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Other long-term assets</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-111" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets" format="ixt:num-dot-decimal" scale="3" id="f-540">1,999</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-112" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets" format="ixt:num-dot-decimal" scale="3" id="f-541">1,842</ix:nonFraction>&#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:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-111" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-542">89,481</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-112" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-543">79,495</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Valuation allowance from classifying the discontinued operations as held-for-sale</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-111" decimals="-3" name="wprt:DisposalGroupIncludingDiscontinuedOperationValuationAllowance" format="ixt:num-dot-decimal" scale="3" id="f-544">30,183</ix:nonFraction>)</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-112" decimals="-3" name="wprt:DisposalGroupIncludingDiscontinuedOperationValuationAllowance" format="ixt:fixed-zero" scale="3" id="f-545">&#8212;</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Total assets classified as held for sale</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-111" decimals="-3" name="us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperation" format="ixt:num-dot-decimal" scale="3" id="f-546">201,719</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-112" decimals="-3" name="us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperation" format="ixt:num-dot-decimal" scale="3" id="f-547">207,893</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:14pt"><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;border-top:3pt double #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Accounts payable and accrued liabilities</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-111" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationAccountsPayableAndAccruedLiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="f-548">78,048</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-112" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationAccountsPayableAndAccruedLiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="f-549">68,688</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Current portion of operating lease liabilities</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-111" decimals="-3" name="wprt:DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityCurrent" format="ixt:num-dot-decimal" scale="3" id="f-550">2,703</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-112" decimals="-3" name="wprt:DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityCurrent" format="ixt:num-dot-decimal" scale="3" id="f-551">2,336</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Current portion of long-term debt</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-111" decimals="-3" name="wprt:DisposalGroupIncludingDiscontinuedOperationLongTermDebtCurrent" format="ixt:num-dot-decimal" scale="3" id="f-552">9,763</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-112" decimals="-3" name="wprt:DisposalGroupIncludingDiscontinuedOperationLongTermDebtCurrent" format="ixt:num-dot-decimal" scale="3" id="f-553">10,755</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Current portion of warranty liabilities</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-111" decimals="-3" name="wprt:DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualCurrent" format="ixt:num-dot-decimal" scale="3" id="f-554">3,416</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-112" decimals="-3" name="wprt:DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualCurrent" format="ixt:num-dot-decimal" scale="3" id="f-555">2,709</ix:nonFraction>&#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:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-111" decimals="-3" name="us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent" format="ixt:num-dot-decimal" scale="3" id="f-556">93,930</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-112" decimals="-3" name="us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent" format="ixt:num-dot-decimal" scale="3" id="f-557">84,488</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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"/><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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Long-term operating lease liabilities</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-111" decimals="-3" name="wprt:DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-558">19,170</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-112" decimals="-3" name="wprt:DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-559">15,885</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Long-term debt</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-111" decimals="-3" name="wprt:DisposalGroupIncludingDiscontinuedOperationLongTermDebtNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-560">14,487</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-112" decimals="-3" name="wprt:DisposalGroupIncludingDiscontinuedOperationLongTermDebtNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-561">16,135</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Warranty liabilities</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-111" decimals="-3" name="wprt:DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-562">1,888</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-112" decimals="-3" name="wprt:DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-563">1,456</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Deferred income tax liabilities</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-111" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationDeferredTaxLiabilities" format="ixt:num-dot-decimal" scale="3" id="f-564">3,588</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-112" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationDeferredTaxLiabilities" format="ixt:num-dot-decimal" scale="3" id="f-565">4,029</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Other long-term liabilities</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-111" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentLiabilities" format="ixt:num-dot-decimal" scale="3" id="f-566">3,114</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-112" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentLiabilities" format="ixt:num-dot-decimal" scale="3" id="f-567">2,955</ix:nonFraction>&#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:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-111" decimals="-3" name="us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-568">42,247</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-112" decimals="-3" name="us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-569">40,460</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Total liabilities classified as held for sale</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-111" decimals="-3" name="us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation" format="ixt:num-dot-decimal" scale="3" id="f-570">136,177</ix:nonFraction>&#160;</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-112" decimals="-3" name="us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation" format="ixt:num-dot-decimal" scale="3" id="f-571">124,948</ix:nonFraction>&#160;</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"/></tr></table></div></ix:nonNumeric></ix:continuation><div style="text-align:justify"><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="margin-bottom:6pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">10</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:94.5pt;width:100%"><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"/><td style="width:98.900%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Nexa Extra Bold',sans-serif;font-size:18pt;font-weight:700;line-height:100%">WESTPORT FUEL SYSTEMS INC.</span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Notes to Condensed Consolidated Interim Financial Statements (unaudited)<br/></span><span style="font-family:'Montserrat Medium',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><br/></span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(Expressed in thousands of United States dollars, except share and per share amounts)</span></td></tr><tr><td colspan="3" style="border-bottom:2pt solid #000000;border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;Three and six months ended June&#160;30, 2025 and 2024</span></div></td></tr></table></div></div><ix:continuation id="f-517-1"><ix:continuation id="f-498-2"><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:400;line-height:112%">5.          Assets and liabilities held for sale (continued):</span></div><div style="margin-top:5pt;text-align:justify"><span><br/></span></div><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:112%">Revenue and expenses of the discontinued operation are as follows:</span></div><div style="margin-top:5pt;text-align:justify"><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:53.870%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.572%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.572%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.572%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.578%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Three Months Ended June 30,</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Six Months Ended June 30,</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2024</span></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Revenue</span></td><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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-104" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationRevenue" format="ixt:num-dot-decimal" scale="3" id="f-572">76,372</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-106" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationRevenue" format="ixt:num-dot-decimal" scale="3" id="f-573">69,277</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-105" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationRevenue" format="ixt:num-dot-decimal" scale="3" id="f-574">140,004</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-107" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationRevenue" format="ixt:num-dot-decimal" scale="3" id="f-575">132,423</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Cost of revenue</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-104" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold" format="ixt:num-dot-decimal" scale="3" id="f-576">61,219</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-106" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold" format="ixt:num-dot-decimal" scale="3" id="f-577">54,514</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-105" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold" format="ixt:num-dot-decimal" scale="3" id="f-578">111,160</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-107" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold" format="ixt:num-dot-decimal" scale="3" id="f-579">105,395</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Gross profit</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-104" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss" format="ixt:num-dot-decimal" scale="3" id="f-580">15,153</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-106" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss" format="ixt:num-dot-decimal" scale="3" id="f-581">14,763</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-105" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss" format="ixt:num-dot-decimal" scale="3" id="f-582">28,844</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-107" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss" format="ixt:num-dot-decimal" scale="3" id="f-583">27,028</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"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Operating expenses:</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Research and development</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-104" decimals="-3" name="wprt:DisposalGroupIncludingDiscontinuedOperationResearchAndDevelopmentExpense" format="ixt:num-dot-decimal" scale="3" id="f-584">2,979</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-106" decimals="-3" name="wprt:DisposalGroupIncludingDiscontinuedOperationResearchAndDevelopmentExpense" format="ixt:num-dot-decimal" scale="3" id="f-585">3,100</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-105" decimals="-3" name="wprt:DisposalGroupIncludingDiscontinuedOperationResearchAndDevelopmentExpense" format="ixt:num-dot-decimal" scale="3" id="f-586">5,738</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-107" decimals="-3" name="wprt:DisposalGroupIncludingDiscontinuedOperationResearchAndDevelopmentExpense" format="ixt:num-dot-decimal" scale="3" id="f-587">6,444</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">General and administrative</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-104" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationGeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="f-588">3,756</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-106" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationGeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="f-589">5,883</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-105" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationGeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="f-590">7,481</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-107" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationGeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="f-591">9,041</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Sales and marketing</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-104" decimals="-3" name="wprt:DisposalGroupIncludingDiscontinuedOperationSellingAndMarketingExpense" format="ixt:num-dot-decimal" scale="3" id="f-592">2,854</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-106" decimals="-3" name="wprt:DisposalGroupIncludingDiscontinuedOperationSellingAndMarketingExpense" format="ixt:num-dot-decimal" scale="3" id="f-593">2,478</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-105" decimals="-3" name="wprt:DisposalGroupIncludingDiscontinuedOperationSellingAndMarketingExpense" format="ixt:num-dot-decimal" scale="3" id="f-594">5,169</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-107" decimals="-3" name="wprt:DisposalGroupIncludingDiscontinuedOperationSellingAndMarketingExpense" format="ixt:num-dot-decimal" scale="3" id="f-595">4,644</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Foreign exchange loss</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-104" decimals="-3" sign="-" name="wprt:DisposalGroupIncludingDiscontinuedOperationForeignExchangeGainLoss" format="ixt:num-dot-decimal" scale="3" id="f-596">1,862</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-106" decimals="-3" sign="-" name="wprt:DisposalGroupIncludingDiscontinuedOperationForeignExchangeGainLoss" scale="3" id="f-597">198</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-105" decimals="-3" sign="-" name="wprt:DisposalGroupIncludingDiscontinuedOperationForeignExchangeGainLoss" format="ixt:num-dot-decimal" scale="3" id="f-598">2,609</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-107" decimals="-3" sign="-" name="wprt:DisposalGroupIncludingDiscontinuedOperationForeignExchangeGainLoss" scale="3" id="f-599">82</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Depreciation and amortization</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-104" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization" scale="3" id="f-600">646</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-106" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization" scale="3" id="f-601">622</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-105" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="f-602">1,279</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-107" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="f-603">1,307</ix:nonFraction>&#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:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-104" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationOperatingExpense" format="ixt:num-dot-decimal" scale="3" id="f-604">12,097</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-106" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationOperatingExpense" format="ixt:num-dot-decimal" scale="3" id="f-605">12,281</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-105" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationOperatingExpense" format="ixt:num-dot-decimal" scale="3" id="f-606">22,276</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-107" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationOperatingExpense" format="ixt:num-dot-decimal" scale="3" id="f-607">21,518</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Income from discontinued operations</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-104" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="f-608">3,056</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-106" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="f-609">2,482</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-105" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="f-610">6,568</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-107" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="f-611">5,510</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"/></tr><tr style="height:14pt"><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Income from investment accounted for by the equity method</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-104" decimals="-3" name="wprt:DisposalGroupIncludingDiscontinuedOperationIncomeLossFromEquityMethodInvestments" scale="3" id="f-612">387</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-106" decimals="-3" name="wprt:DisposalGroupIncludingDiscontinuedOperationIncomeLossFromEquityMethodInvestments" scale="3" id="f-613">414</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-105" decimals="-3" name="wprt:DisposalGroupIncludingDiscontinuedOperationIncomeLossFromEquityMethodInvestments" scale="3" id="f-614">472</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-107" decimals="-3" name="wprt:DisposalGroupIncludingDiscontinuedOperationIncomeLossFromEquityMethodInvestments" scale="3" id="f-615">445</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Loss from classifying the discontinued operations as held-for-sale</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-104" decimals="-3" name="us-gaap:DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax" format="ixt:num-dot-decimal" scale="3" id="f-616">30,183</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-106" decimals="-3" name="us-gaap:DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax" format="ixt:fixed-zero" scale="3" id="f-617">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-105" decimals="-3" name="us-gaap:DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax" format="ixt:num-dot-decimal" scale="3" id="f-618">30,183</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-107" decimals="-3" name="us-gaap:DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax" format="ixt:fixed-zero" scale="3" id="f-619">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Impairment of long-lived assets</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-104" decimals="-3" name="wprt:DisposalGroupIncludingDiscontinuedOperationImpairmentOfLongLivedAssets" scale="3" id="f-620">664</ix:nonFraction>)</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',serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-106" decimals="-3" name="wprt:DisposalGroupIncludingDiscontinuedOperationImpairmentOfLongLivedAssets" format="ixt:fixed-zero" scale="3" id="f-621">&#8212;</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-105" decimals="-3" name="wprt:DisposalGroupIncludingDiscontinuedOperationImpairmentOfLongLivedAssets" scale="3" id="f-622">664</ix:nonFraction>)</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',serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-107" decimals="-3" name="wprt:DisposalGroupIncludingDiscontinuedOperationImpairmentOfLongLivedAssets" format="ixt:fixed-zero" scale="3" id="f-623">&#8212;</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Interest on long-term debt</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-104" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationInterestExpense" scale="3" id="f-624">391</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-106" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationInterestExpense" scale="3" id="f-625">438</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-105" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationInterestExpense" scale="3" id="f-626">875</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-107" decimals="-3" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationInterestExpense" scale="3" id="f-627">935</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Interest and other income (loss), net of bank charges</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-104" decimals="-3" name="wprt:DisposalGroupIncludingDiscontinuedOperationInterestAndOtherIncomeExpense" scale="3" id="f-628">133</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-106" decimals="-3" name="wprt:DisposalGroupIncludingDiscontinuedOperationInterestAndOtherIncomeExpense" scale="3" id="f-629">88</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-105" decimals="-3" name="wprt:DisposalGroupIncludingDiscontinuedOperationInterestAndOtherIncomeExpense" scale="3" id="f-630">353</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-107" decimals="-3" name="wprt:DisposalGroupIncludingDiscontinuedOperationInterestAndOtherIncomeExpense" scale="3" id="f-631">503</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Income (loss) from discontinued operations before income tax</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-104" decimals="-3" sign="-" name="us-gaap:DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax" format="ixt:num-dot-decimal" scale="3" id="f-632">27,662</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-106" decimals="-3" name="us-gaap:DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax" format="ixt:num-dot-decimal" scale="3" id="f-633">2,546</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-105" decimals="-3" sign="-" name="us-gaap:DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax" format="ixt:num-dot-decimal" scale="3" id="f-634">24,329</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-107" decimals="-3" name="us-gaap:DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax" format="ixt:num-dot-decimal" scale="3" id="f-635">5,523</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Income tax expense</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-104" decimals="-3" name="us-gaap:DiscontinuedOperationTaxEffectOfDiscontinuedOperation" format="ixt:num-dot-decimal" scale="3" id="f-636">1,629</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-106" decimals="-3" name="us-gaap:DiscontinuedOperationTaxEffectOfDiscontinuedOperation" scale="3" id="f-637">875</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-105" decimals="-3" name="us-gaap:DiscontinuedOperationTaxEffectOfDiscontinuedOperation" format="ixt:num-dot-decimal" scale="3" id="f-638">2,118</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-107" decimals="-3" name="us-gaap:DiscontinuedOperationTaxEffectOfDiscontinuedOperation" format="ixt:num-dot-decimal" scale="3" id="f-639">1,479</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Net income (loss) from discontinued operations</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-104" decimals="-3" sign="-" name="us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity" format="ixt:num-dot-decimal" scale="3" id="f-640">29,291</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-106" decimals="-3" name="us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity" format="ixt:num-dot-decimal" scale="3" id="f-641">1,671</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-105" decimals="-3" sign="-" name="us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity" format="ixt:num-dot-decimal" scale="3" id="f-642">26,447</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-107" decimals="-3" name="us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity" format="ixt:num-dot-decimal" scale="3" id="f-643">4,044</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div></ix:continuation></ix:continuation><div style="text-align:justify"><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="margin-bottom:6pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">11</span></div></div></div><div id="i608fb9ff67a8405292e36940766acecf_52"></div><hr style="page-break-after:always"/><div style="min-height:94.5pt;width:100%"><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"/><td style="width:98.900%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Nexa Extra Bold',sans-serif;font-size:18pt;font-weight:700;line-height:100%">WESTPORT FUEL SYSTEMS INC.</span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Notes to Condensed Consolidated Interim Financial Statements (unaudited)<br/></span><span style="font-family:'Montserrat Medium',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><br/></span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(Expressed in thousands of United States dollars, except share and per share amounts)</span></td></tr><tr><td colspan="3" style="border-bottom:2pt solid #000000;border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;Three and six months ended June&#160;30, 2025 and 2024</span></div></td></tr></table></div></div><ix:nonNumeric contextRef="c-1" name="us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock" id="f-644" escape="true"><div><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">6.          Accounts receivable:</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">  </span></div><ix:nonNumeric contextRef="c-1" name="us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" id="f-645" escape="true"><div style="margin-top:5pt"><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:60.303%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.613%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.616%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">June 30, 2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Customer trade receivables</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="wprt:TradeAccountsReceivable" format="ixt:num-dot-decimal" scale="3" id="f-646">2,916</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="wprt:TradeAccountsReceivable" format="ixt:num-dot-decimal" scale="3" id="f-647">2,513</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Holdback receivable</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="wprt:HoldbackReceivablesNetCurrent" format="ixt:fixed-zero" scale="3" id="f-648">&#8212;</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="wprt:HoldbackReceivablesNetCurrent" format="ixt:num-dot-decimal" scale="3" id="f-649">10,737</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Other receivables</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:OtherReceivables" format="ixt:num-dot-decimal" scale="3" id="f-650">1,728</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:OtherReceivables" scale="3" id="f-651">887</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Due from related parties (note 14)</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-113" decimals="-3" name="us-gaap:OtherReceivablesNetCurrent" format="ixt:num-dot-decimal" scale="3" id="f-652">12,505</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-114" decimals="-3" name="us-gaap:OtherReceivablesNetCurrent" format="ixt:num-dot-decimal" scale="3" id="f-653">4,973</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Allowance for expected credit losses</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" scale="3" id="f-654">569</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" scale="3" id="f-655">372</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:AccountsReceivableNetCurrent" format="ixt:num-dot-decimal" scale="3" id="f-656">16,580</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 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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:AccountsReceivableNetCurrent" format="ixt:num-dot-decimal" scale="3" id="f-657">18,738</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"/></tr></table></div></ix:nonNumeric><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In 2022, a holdback receivable was recorded as part of the sale of the Company's interest in Cummins Westport Inc. to Cummins Inc. ("Cummins"). The holdback was retained by Cummins for a term of <ix:nonNumeric contextRef="c-115" name="wprt:HoldbackTerm" format="ixt-sec:durwordsen" id="f-658">three years</ix:nonNumeric> to satisfy any extended warranty obligations in excess of the recorded extended warranty obligation. Unused amounts were repaid to the Company at the end of the <ix:nonNumeric contextRef="c-115" name="wprt:HoldbackTerm" format="ixt-sec:durwordsen" id="f-659">three-year</ix:nonNumeric> term. In March 2025, the Company collected $<ix:nonFraction unitRef="usd" contextRef="c-116" decimals="-3" name="wprt:HoldbackReceivablesNetCurrent" format="ixt:num-dot-decimal" scale="3" id="f-660">11,365</ix:nonFraction> from Cummins related to the holdback receivable, including interest accrued.</span></div></ix:nonNumeric><div style="margin-top:5pt;text-align:justify"><span><br/></span></div><div id="i608fb9ff67a8405292e36940766acecf_55"></div><ix:nonNumeric contextRef="c-1" name="us-gaap:InventoryDisclosureTextBlock" id="f-661" escape="true"><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">7.          Inventories:</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%"> </span></div><ix:nonNumeric contextRef="c-1" name="us-gaap:ScheduleOfInventoryCurrentTableTextBlock" id="f-662" escape="true"><div style="margin-top:5pt"><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:60.303%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.613%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.616%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">June 30, 2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Purchased parts</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:OtherInventoryPurchasedGoods" format="ixt:num-dot-decimal" scale="3" id="f-663">2,341</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:OtherInventoryPurchasedGoods" format="ixt:num-dot-decimal" scale="3" id="f-664">5,463</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Finished goods</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:InventoryFinishedGoods" scale="3" id="f-665">515</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:InventoryFinishedGoods" format="ixt:num-dot-decimal" scale="3" id="f-666">1,205</ix:nonFraction>&#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"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:InventoryNet" format="ixt:num-dot-decimal" scale="3" id="f-667">2,856</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:InventoryNet" format="ixt:num-dot-decimal" scale="3" id="f-668">6,668</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div></ix:nonNumeric><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the three and six months ended June 30, 2025, the Company recorded change in write-downs to net realizable value of approximately $<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:InventoryWriteDown" scale="3" id="f-669">140</ix:nonFraction> and $<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:InventoryWriteDown" scale="3" id="f-670">110</ix:nonFraction>, respectively (three and six months ended June 30, 2024 - $<ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:InventoryWriteDown" scale="3" id="f-671">307</ix:nonFraction> and $<ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:InventoryWriteDown" scale="3" id="f-672">503</ix:nonFraction>, respectively).</span></div></ix:nonNumeric><div style="margin-top:5pt;text-align:justify"><span><br/></span></div><div id="i608fb9ff67a8405292e36940766acecf_61"></div><ix:nonNumeric contextRef="c-1" name="us-gaap:EquityMethodInvestmentsDisclosureTextBlock" id="f-673" continuedAt="f-673-1" escape="true"><div><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">8.          Long-term investments:</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%"> </span></div><ix:nonNumeric contextRef="c-1" name="us-gaap:EquityMethodInvestmentsTextBlock" id="f-674" continuedAt="f-674-1" escape="true"><div style="margin-top:5pt"><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:60.303%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.613%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.616%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">June 30, 2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Cespira Canada LP</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-117" decimals="-3" name="us-gaap:LongTermInvestments" format="ixt:num-dot-decimal" scale="3" id="f-675">24,263</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-118" decimals="-3" name="us-gaap:LongTermInvestments" format="ixt:num-dot-decimal" scale="3" id="f-676">25,494</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Cespira Sweden AB</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-119" decimals="-3" name="us-gaap:LongTermInvestments" format="ixt:num-dot-decimal" scale="3" id="f-677">12,859</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-120" decimals="-3" name="us-gaap:LongTermInvestments" format="ixt:num-dot-decimal" scale="3" id="f-678">11,225</ix:nonFraction>&#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"/><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"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Other equity-accounted investees</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-121" decimals="-3" name="us-gaap:LongTermInvestments" format="ixt:fixed-zero" scale="3" id="f-679">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-122" decimals="-3" name="us-gaap:LongTermInvestments" scale="3" id="f-680">147</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:LongTermInvestments" format="ixt:num-dot-decimal" scale="3" id="f-681">37,122</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 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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:LongTermInvestments" format="ixt:num-dot-decimal" scale="3" id="f-682">36,866</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"/></tr></table></div></ix:nonNumeric><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the three and six months ended June&#160;30, 2025, the Company recognized its share of Cespira's losses of $<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" sign="-" name="us-gaap:IncomeLossFromEquityMethodInvestments" format="ixt:num-dot-decimal" scale="3" id="f-683">3,686</ix:nonFraction> and $<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:IncomeLossFromEquityMethodInvestments" format="ixt:num-dot-decimal" scale="3" id="f-684">7,570</ix:nonFraction></span><span style="background-color:#ffffff;color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">as a loss from investment accounted for by the equity method, respectively (three and six months ended June 30, 2024 - $<ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" sign="-" name="us-gaap:IncomeLossFromEquityMethodInvestments" format="ixt:num-dot-decimal" scale="3" id="f-685">1,102</ix:nonFraction> and $<ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" sign="-" name="us-gaap:IncomeLossFromEquityMethodInvestments" format="ixt:num-dot-decimal" scale="3" id="f-686">1,102</ix:nonFraction>, respectively).</span></div><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the three and six months ended June 30, 2025, the Company contributed additional capital of $<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:PaymentsToAcquireEquityMethodInvestments" format="ixt:num-dot-decimal" scale="3" id="f-687">4,185</ix:nonFraction> and $<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:PaymentsToAcquireEquityMethodInvestments" format="ixt:num-dot-decimal" scale="3" id="f-688">8,871</ix:nonFraction> into Cespira, respectively (three and six months ended June 30, 2024 - $<ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:PaymentsToAcquireEquityMethodInvestments" format="ixt:num-dot-decimal" scale="3" id="f-689">9,900</ix:nonFraction> and $<ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:PaymentsToAcquireEquityMethodInvestments" format="ixt:num-dot-decimal" scale="3" id="f-690">9,900</ix:nonFraction>, respectively).</span></div></ix:nonNumeric><div style="margin-top:5pt;text-align:justify"><span><br/></span></div><div style="margin-top:5pt;text-align:justify"><span><br/></span></div><div style="margin-top:5pt;text-align:justify"><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="margin-bottom:6pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',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:94.5pt;width:100%"><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"/><td style="width:98.900%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Nexa Extra Bold',sans-serif;font-size:18pt;font-weight:700;line-height:100%">WESTPORT FUEL SYSTEMS INC.</span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Notes to Condensed Consolidated Interim Financial Statements (unaudited)<br/></span><span style="font-family:'Montserrat Medium',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><br/></span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(Expressed in thousands of United States dollars, except share and per share amounts)</span></td></tr><tr><td colspan="3" style="border-bottom:2pt solid #000000;border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;Three and six months ended June&#160;30, 2025 and 2024</span></div></td></tr></table></div></div><ix:continuation id="f-673-1"><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:400;line-height:120%">8.          Long-term investments (continued):</span></div><ix:continuation id="f-674-1"><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Combined assets, liabilities, revenue and expenses of Cespira, are as follows:</span></div><div style="margin-top:5pt;text-align:justify"><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:61.180%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.174%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.178%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">June 30,</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">December 31, </span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2024</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current assets:</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"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash and cash equivalents</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-123" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="f-691">9,010</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-124" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="f-692">10,305</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts receivable</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-123" decimals="-3" name="us-gaap:AccountsReceivableNetCurrent" format="ixt:num-dot-decimal" scale="3" id="f-693">25,068</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-124" decimals="-3" name="us-gaap:AccountsReceivableNetCurrent" format="ixt:num-dot-decimal" scale="3" id="f-694">21,000</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Inventories</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-123" decimals="-3" name="us-gaap:InventoryNet" format="ixt:num-dot-decimal" scale="3" id="f-695">16,512</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-124" decimals="-3" name="us-gaap:InventoryNet" format="ixt:num-dot-decimal" scale="3" id="f-696">7,414</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Prepaid expenses</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-123" decimals="-3" name="us-gaap:PrepaidExpenseCurrentAndNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-697">3,376</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-124" decimals="-3" name="us-gaap:PrepaidExpenseCurrentAndNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-698">1,471</ix:nonFraction>&#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:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-123" decimals="-3" name="us-gaap:AssetsCurrent" format="ixt:num-dot-decimal" scale="3" id="f-699">53,966</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-124" decimals="-3" name="us-gaap:AssetsCurrent" format="ixt:num-dot-decimal" scale="3" id="f-700">40,190</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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"/><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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property, plant and equipment</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-123" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentNet" format="ixt:num-dot-decimal" scale="3" id="f-701">41,409</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-124" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentNet" format="ixt:num-dot-decimal" scale="3" id="f-702">40,901</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Intangible assets</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-123" decimals="-3" name="us-gaap:IntangibleAssetsNetExcludingGoodwill" format="ixt:num-dot-decimal" scale="3" id="f-703">7,215</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-124" decimals="-3" name="us-gaap:IntangibleAssetsNetExcludingGoodwill" format="ixt:num-dot-decimal" scale="3" id="f-704">7,087</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-123" decimals="-3" name="us-gaap:Goodwill" scale="3" id="f-705">595</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-124" decimals="-3" name="us-gaap:Goodwill" scale="3" id="f-706">563</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferred tax assets</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-123" decimals="-3" name="us-gaap:DeferredTaxAssetsGross" scale="3" id="f-707">102</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-124" decimals="-3" name="us-gaap:DeferredTaxAssetsGross" format="ixt:fixed-zero" scale="3" id="f-708">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total assets</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:10pt;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-123" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="f-709">103,287</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:10pt;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-124" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="f-710">88,741</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"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current liabilities:</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;border-top:3pt double #000;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;border-top:3pt double #000;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts payable</span></td><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:'Montserrat',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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-123" decimals="-3" name="us-gaap:AccountsPayableAndAccruedLiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="f-711">22,680</ix:nonFraction>&#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:'Montserrat',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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-124" decimals="-3" name="us-gaap:AccountsPayableAndAccruedLiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="f-712">16,527</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current portion of provisions</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-123" decimals="-3" name="us-gaap:ShortTermBorrowings" format="ixt:num-dot-decimal" scale="3" id="f-713">1,826</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-124" decimals="-3" name="us-gaap:ShortTermBorrowings" format="ixt:num-dot-decimal" scale="3" id="f-714">2,128</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other current liabilities</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-123" decimals="-3" name="us-gaap:OtherLiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="f-715">4,800</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-124" decimals="-3" name="us-gaap:OtherLiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="f-716">1,910</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;&#160;&#160;Deferred income tax liabilities</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-123" decimals="-3" name="us-gaap:DeferredIncomeTaxLiabilities" scale="3" id="f-717">197</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-124" decimals="-3" name="us-gaap:DeferredIncomeTaxLiabilities" format="ixt:fixed-zero" scale="3" id="f-718">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-123" decimals="-3" name="us-gaap:LiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="f-719">29,503</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-124" decimals="-3" name="us-gaap:LiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="f-720">20,565</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"/></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"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-term portion of provisions</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-123" decimals="-3" name="us-gaap:LongTermDebtAndCapitalLeaseObligations" scale="3" id="f-721">456</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-124" decimals="-3" name="us-gaap:LongTermDebtAndCapitalLeaseObligations" scale="3" id="f-722">532</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other long-term liabilities</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-123" decimals="-3" name="us-gaap:OtherLiabilitiesNoncurrent" scale="3" id="f-723">290</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-124" decimals="-3" name="us-gaap:OtherLiabilitiesNoncurrent" scale="3" id="f-724">569</ix:nonFraction>&#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"/><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"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total liabilities</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-123" decimals="-3" name="us-gaap:Liabilities" format="ixt:num-dot-decimal" scale="3" id="f-725">30,249</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-124" decimals="-3" name="us-gaap:Liabilities" format="ixt:num-dot-decimal" scale="3" id="f-726">21,666</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net assets</span></td><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:'Montserrat',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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-123" decimals="-3" name="us-gaap:AssetsNet" format="ixt:num-dot-decimal" scale="3" id="f-727">73,038</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 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:'Montserrat',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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-124" decimals="-3" name="us-gaap:AssetsNet" format="ixt:num-dot-decimal" scale="3" id="f-728">67,075</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"/></tr></table></div><div style="margin-top:5pt;text-align:justify"><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:38.081%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.519%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.519%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.519%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.526%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Three Months Ended June 30,</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Six Months Ended June 30,</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2024</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Revenue</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-125" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-729">12,020</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-126" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-730">4,059</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-127" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-731">28,819</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-128" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-732">4,059</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost of revenue</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-125" decimals="-3" name="us-gaap:CostOfRevenue" format="ixt:num-dot-decimal" scale="3" id="f-733">13,946</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-126" decimals="-3" name="us-gaap:CostOfRevenue" format="ixt:num-dot-decimal" scale="3" id="f-734">3,901</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-127" decimals="-3" name="us-gaap:CostOfRevenue" format="ixt:num-dot-decimal" scale="3" id="f-735">30,230</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-128" decimals="-3" name="us-gaap:CostOfRevenue" format="ixt:num-dot-decimal" scale="3" id="f-736">3,901</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gross profit</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-125" decimals="-3" sign="-" name="us-gaap:GrossProfit" format="ixt:num-dot-decimal" scale="3" id="f-737">1,926</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-126" decimals="-3" name="us-gaap:GrossProfit" scale="3" id="f-738">158</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-127" decimals="-3" sign="-" name="us-gaap:GrossProfit" format="ixt:num-dot-decimal" scale="3" id="f-739">1,411</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-128" decimals="-3" name="us-gaap:GrossProfit" scale="3" id="f-740">158</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="21" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating expenses:</span></td><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:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Research and development</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-125" decimals="-3" name="us-gaap:ResearchAndDevelopmentExpense" format="ixt:num-dot-decimal" scale="3" id="f-741">1,888</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-126" decimals="-3" name="us-gaap:ResearchAndDevelopmentExpense" format="ixt:num-dot-decimal" scale="3" id="f-742">1,121</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-127" decimals="-3" name="us-gaap:ResearchAndDevelopmentExpense" format="ixt:num-dot-decimal" scale="3" id="f-743">4,890</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-128" decimals="-3" name="us-gaap:ResearchAndDevelopmentExpense" format="ixt:num-dot-decimal" scale="3" id="f-744">1,121</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">General and administrative</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-125" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="f-745">2,692</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-126" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" scale="3" id="f-746">715</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-127" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="f-747">5,419</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-128" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" scale="3" id="f-748">715</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Sales and marketing</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-125" decimals="-3" name="us-gaap:SellingAndMarketingExpense" scale="3" id="f-749">322</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-126" decimals="-3" name="us-gaap:SellingAndMarketingExpense" scale="3" id="f-750">69</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-127" decimals="-3" name="us-gaap:SellingAndMarketingExpense" scale="3" id="f-751">618</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-128" decimals="-3" name="us-gaap:SellingAndMarketingExpense" scale="3" id="f-752">69</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign exchange gain</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-125" decimals="-3" name="us-gaap:ForeignCurrencyTransactionGainLossBeforeTax" scale="3" id="f-753">845</ix:nonFraction>)</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-126" decimals="-3" name="us-gaap:ForeignCurrencyTransactionGainLossBeforeTax" format="ixt:fixed-zero" scale="3" id="f-754">&#8212;</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-127" decimals="-3" name="us-gaap:ForeignCurrencyTransactionGainLossBeforeTax" scale="3" id="f-755">88</ix:nonFraction>)</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-128" decimals="-3" name="us-gaap:ForeignCurrencyTransactionGainLossBeforeTax" format="ixt:fixed-zero" scale="3" id="f-756">&#8212;</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Depreciation and amortization</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-125" decimals="-3" name="us-gaap:DepreciationAmortizationAndAccretionNet" scale="3" id="f-757">860</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-126" decimals="-3" name="us-gaap:DepreciationAmortizationAndAccretionNet" scale="3" id="f-758">265</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-127" decimals="-3" name="us-gaap:DepreciationAmortizationAndAccretionNet" format="ixt:num-dot-decimal" scale="3" id="f-759">1,590</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-128" decimals="-3" name="us-gaap:DepreciationAmortizationAndAccretionNet" scale="3" id="f-760">265</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-125" decimals="-3" name="us-gaap:CostsAndExpenses" format="ixt:num-dot-decimal" scale="3" id="f-761">4,917</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-126" decimals="-3" name="us-gaap:CostsAndExpenses" format="ixt:num-dot-decimal" scale="3" id="f-762">2,170</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-127" decimals="-3" name="us-gaap:CostsAndExpenses" format="ixt:num-dot-decimal" scale="3" id="f-763">12,429</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-128" decimals="-3" name="us-gaap:CostsAndExpenses" format="ixt:num-dot-decimal" scale="3" id="f-764">2,170</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"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Loss from operations</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-125" decimals="-3" sign="-" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="f-765">6,843</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-126" decimals="-3" sign="-" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="f-766">2,012</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-127" decimals="-3" sign="-" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="f-767">13,840</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-128" decimals="-3" sign="-" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="f-768">2,012</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest income, net of bank charges</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-125" decimals="-3" name="us-gaap:InterestIncomeExpenseNonoperatingNet" scale="3" id="f-769">25</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-126" decimals="-3" name="us-gaap:InterestIncomeExpenseNonoperatingNet" format="ixt:fixed-zero" scale="3" id="f-770">&#8212;</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-127" decimals="-3" name="us-gaap:InterestIncomeExpenseNonoperatingNet" scale="3" id="f-771">32</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-128" decimals="-3" name="us-gaap:InterestIncomeExpenseNonoperatingNet" format="ixt:fixed-zero" scale="3" id="f-772">&#8212;</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Loss before income taxes</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-125" decimals="-3" sign="-" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-773">6,818</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-126" decimals="-3" sign="-" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-774">2,012</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-127" decimals="-3" sign="-" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-775">13,808</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-128" decimals="-3" sign="-" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-776">2,012</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income tax (recovery) expense</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-125" decimals="-3" sign="-" name="us-gaap:IncomeTaxExpenseBenefit" scale="3" id="f-777">72</ix:nonFraction>)</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-126" decimals="-3" name="us-gaap:IncomeTaxExpenseBenefit" scale="3" id="f-778">4</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-127" decimals="-3" sign="-" name="us-gaap:IncomeTaxExpenseBenefit" scale="3" id="f-779">64</ix:nonFraction>)</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-128" decimals="-3" name="us-gaap:IncomeTaxExpenseBenefit" scale="3" id="f-780">4</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net loss</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-125" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="f-781">6,746</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-126" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="f-782">2,016</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-127" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="f-783">13,744</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-128" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="f-784">2,016</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div></ix:continuation></ix:continuation><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="margin-bottom:6pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',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:94.5pt;width:100%"><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"/><td style="width:98.900%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Nexa Extra Bold',sans-serif;font-size:18pt;font-weight:700;line-height:100%">WESTPORT FUEL SYSTEMS INC.</span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Notes to Condensed Consolidated Interim Financial Statements (unaudited)<br/></span><span style="font-family:'Montserrat Medium',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><br/></span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(Expressed in thousands of United States dollars, except share and per share amounts)</span></td></tr><tr><td colspan="3" style="border-bottom:2pt solid #000000;border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;Three and six months ended June&#160;30, 2025 and 2024</span></div></td></tr></table></div></div><div style="margin-top:5pt;text-align:justify"><span><br/></span></div><div id="i608fb9ff67a8405292e36940766acecf_82"></div><ix:nonNumeric contextRef="c-1" name="us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock" id="f-785" escape="true"><div><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">9.          Property, plant and equipment:</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">  </span></div><div><span><br/></span></div><ix:nonNumeric contextRef="c-1" name="us-gaap:PropertyPlantAndEquipmentTextBlock" id="f-786" escape="true"><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:55.478%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.788%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.788%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.794%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Accumulated</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Net&#160;Book</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">June 30, 2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Cost</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Depreciation</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Value</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Computer equipment and software</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-129" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" format="ixt:num-dot-decimal" scale="3" id="f-787">2,976</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-129" decimals="-3" name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="f-788">2,799</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-129" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentNet" scale="3" id="f-789">177</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Furniture and fixtures</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-130" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" format="ixt:num-dot-decimal" scale="3" id="f-790">1,013</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-130" decimals="-3" name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" scale="3" id="f-791">381</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-130" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentNet" scale="3" id="f-792">632</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Machinery and equipment</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-131" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" format="ixt:num-dot-decimal" scale="3" id="f-793">11,942</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-131" decimals="-3" name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="f-794">8,527</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-131" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentNet" format="ixt:num-dot-decimal" scale="3" id="f-795">3,415</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Leasehold improvements</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-132" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" format="ixt:num-dot-decimal" scale="3" id="f-796">4,306</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-132" decimals="-3" name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="f-797">4,086</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-132" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentNet" scale="3" id="f-798">220</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" format="ixt:num-dot-decimal" scale="3" id="f-799">20,237</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="f-800">15,793</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentNet" format="ixt:num-dot-decimal" scale="3" id="f-801">4,444</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div><span><br/></span></div><div><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.478%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.788%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.788%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.794%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Accumulated</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Net Book</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">December 31, 2024</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Cost</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Depreciation</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Value</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Computer equipment and software</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-133" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" format="ixt:num-dot-decimal" scale="3" id="f-802">2,945</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-133" decimals="-3" name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="f-803">2,575</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-133" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentNet" scale="3" id="f-804">370</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Furniture and fixtures</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-134" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="f-805">861</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-134" decimals="-3" name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" scale="3" id="f-806">309</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-134" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentNet" scale="3" id="f-807">552</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Machinery and equipment</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-135" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" format="ixt:num-dot-decimal" scale="3" id="f-808">9,464</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-135" decimals="-3" name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="f-809">7,488</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-135" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentNet" format="ixt:num-dot-decimal" scale="3" id="f-810">1,976</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Leasehold improvements</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-136" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" format="ixt:num-dot-decimal" scale="3" id="f-811">4,064</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-136" decimals="-3" name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="f-812">3,842</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-136" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentNet" scale="3" id="f-813">222</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" format="ixt:num-dot-decimal" scale="3" id="f-814">17,334</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="f-815">14,214</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentNet" format="ixt:num-dot-decimal" scale="3" id="f-816">3,120</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div></ix:nonNumeric></ix:nonNumeric><div><span><br/></span></div><div id="i608fb9ff67a8405292e36940766acecf_94"></div><ix:nonNumeric contextRef="c-1" name="us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" id="f-817" escape="true"><div><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">10.          Accounts payable and accrued liabilities:</span></div><ix:nonNumeric contextRef="c-1" name="us-gaap:ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock" id="f-818" escape="true"><div style="margin-top:5pt"><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:60.303%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.613%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.616%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">June 30, 2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Trade accounts payable</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:AccountsPayableTradeCurrent" format="ixt:num-dot-decimal" scale="3" id="f-819">8,190</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:AccountsPayableTradeCurrent" format="ixt:num-dot-decimal" scale="3" id="f-820">11,397</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Accrued payroll</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:EmployeeRelatedLiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="f-821">3,261</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:EmployeeRelatedLiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="f-822">2,555</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Taxes payable</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:AccruedIncomeTaxesCurrent" format="ixt:num-dot-decimal" scale="3" id="f-823">3,812</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:AccruedIncomeTaxesCurrent" format="ixt:num-dot-decimal" scale="3" id="f-824">3,813</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Deferred revenue</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:ContractWithCustomerLiabilityCurrent" scale="3" id="f-825">330</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:ContractWithCustomerLiabilityCurrent" scale="3" id="f-826">533</ix:nonFraction>&#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"/><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"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Due to related parties (note 14)</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-113" decimals="-3" name="us-gaap:OtherNotesPayableCurrent" format="ixt:num-dot-decimal" scale="3" id="f-827">2,001</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-114" decimals="-3" name="us-gaap:OtherNotesPayableCurrent" format="ixt:num-dot-decimal" scale="3" id="f-828">1,137</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:AccountsPayableAndAccruedLiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="f-829">17,594</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 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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:AccountsPayableAndAccruedLiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="f-830">19,435</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"/></tr></table></div></ix:nonNumeric></ix:nonNumeric><div><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%"> </span></div><div id="i608fb9ff67a8405292e36940766acecf_100"></div><ix:nonNumeric contextRef="c-1" name="us-gaap:LesseeOperatingLeasesTextBlock" id="f-831" continuedAt="f-831-1" escape="true"><div><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">11.          Operating leases right-of-use assets and lease liabilities:</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%"> </span></div><div><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company has entered into various non-cancellable operating lease agreements primarily for its manufacturing facilities and offices. The Company's leases have lease terms expiring between 2027 and 2030. Many leases include one or more options to renew. The Company does not assume renewals in its determination of the lease term unless the renewals are deemed to be reasonably assured at lease commencement. The average remaining lease term is approximately <ix:nonNumeric contextRef="c-2" name="us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1" format="ixt-sec:durwordsen" id="f-832">four years</ix:nonNumeric> and the present value of the outstanding operating lease liability was determined applying a weighted average discount rate of <ix:nonFraction unitRef="number" contextRef="c-2" decimals="3" name="us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent" scale="-2" id="f-833">9.3</ix:nonFraction>% based on incremental borrowing rates applicable in each location.</span></div><ix:nonNumeric contextRef="c-1" name="us-gaap:LeaseCostTableTextBlock" id="f-834" escape="true"><div style="margin-top:7.5pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The components of lease cost are as follows:</span></div><div style="margin-top:5pt;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:39.835%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.935%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.935%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.935%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.940%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Three months ended June 30,</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Six months ended June 30,</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2024</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amortization of right-of-use assets</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:FinanceLeaseRightOfUseAssetAmortization" scale="3" id="f-835">95</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:FinanceLeaseRightOfUseAssetAmortization" scale="3" id="f-836">188</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:FinanceLeaseRightOfUseAssetAmortization" scale="3" id="f-837">185</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:FinanceLeaseRightOfUseAssetAmortization" scale="3" id="f-838">323</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:FinanceLeaseInterestExpense" scale="3" id="f-839">6</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:FinanceLeaseInterestExpense" scale="3" id="f-840">21</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:FinanceLeaseInterestExpense" scale="3" id="f-841">14</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:FinanceLeaseInterestExpense" scale="3" id="f-842">44</ix:nonFraction>&#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"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total lease cost</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:LeaseCost" scale="3" id="f-843">101</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:LeaseCost" scale="3" id="f-844">209</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:LeaseCost" scale="3" id="f-845">199</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:LeaseCost" scale="3" id="f-846">367</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div></ix:nonNumeric></ix:nonNumeric><div style="margin-top:5pt"><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="margin-bottom:6pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',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:94.5pt;width:100%"><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"/><td style="width:98.900%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Nexa Extra Bold',sans-serif;font-size:18pt;font-weight:700;line-height:100%">WESTPORT FUEL SYSTEMS INC.</span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Notes to Condensed Consolidated Interim Financial Statements (unaudited)<br/></span><span style="font-family:'Montserrat Medium',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><br/></span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(Expressed in thousands of United States dollars, except share and per share amounts)</span></td></tr><tr><td colspan="3" style="border-bottom:2pt solid #000000;border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;Three and six months ended June&#160;30, 2025 and 2024</span></div></td></tr></table></div></div><ix:continuation id="f-831-1"><div style="margin-top:5pt"><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:400;line-height:120%">11.          Operating leases right-of-use assets and lease liabilities (continued):</span></div><div><span><br/></span></div><ix:nonNumeric contextRef="c-1" name="us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock" id="f-847" escape="true"><div style="margin-top:7.5pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The maturities of lease liabilities as at June&#160;30, 2025 are as follows:</span></div><div style="margin-top:5pt;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:80.186%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.884%"/><td style="width:0.1%"/></tr><tr><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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">The remainder of 2025</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" scale="3" id="f-848">336</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2026</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" scale="3" id="f-849">595</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2027</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" scale="3" id="f-850">608</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2028</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree" scale="3" id="f-851">551</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2029</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour" scale="3" id="f-852">487</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Thereafter</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="wprt:LesseeOperatingLeaseLiabilityToBePaidAfterYearFour" scale="3" id="f-853">293</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total undiscounted cash flows</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue" format="ixt:num-dot-decimal" scale="3" id="f-854">2,870</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: imputed interest</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" scale="3" id="f-855">905</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Present value of operating lease liabilities</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:OperatingLeaseLiability" format="ixt:num-dot-decimal" scale="3" id="f-856">1,965</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: current portion</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:OperatingLeaseLiabilityCurrent" scale="3" id="f-857">633</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-term operating lease liabilities</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:OperatingLeaseLiabilityNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-858">1,332</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div></ix:nonNumeric></ix:continuation><div style="text-align:center"><span><br/></span></div><div id="i608fb9ff67a8405292e36940766acecf_106"></div><ix:nonNumeric contextRef="c-1" name="us-gaap:LongTermDebtTextBlock" id="f-859" continuedAt="f-859-1" escape="true"><div><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">12.          Long-term debt:</span></div><ix:nonNumeric contextRef="c-1" name="us-gaap:ScheduleOfDebtInstrumentsTextBlock" id="f-860" escape="true"><div style="margin-top:5pt"><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:26.531%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.590%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.566%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.613%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.616%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Term loan facility</span></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Maturity date</span></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Interest rate</span></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">June 30, 2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">EDC</span></td><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">September 15, 2026</span></td><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">U.S. Prime Rate plus <ix:nonFraction unitRef="number" contextRef="c-137" decimals="4" name="us-gaap:DebtInstrumentInterestRateEffectivePercentage" scale="-2" id="f-861">2.01</ix:nonFraction>%</span></div></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-137" decimals="-3" name="us-gaap:DebtAndCapitalLeaseObligations" format="ixt:num-dot-decimal" scale="3" id="f-862">4,882</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-138" decimals="-3" name="us-gaap:DebtAndCapitalLeaseObligations" format="ixt:num-dot-decimal" scale="3" id="f-863">6,837</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;&#160;&#160;Current portion</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-59" decimals="-3" name="us-gaap:LongTermDebtAndCapitalLeaseObligationsCurrent" format="ixt:num-dot-decimal" scale="3" id="f-864">3,905</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-139" decimals="-3" name="us-gaap:LongTermDebtAndCapitalLeaseObligationsCurrent" format="ixt:num-dot-decimal" scale="3" id="f-865">3,905</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"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;&#160;&#160;Long-term portion</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-59" decimals="-3" name="us-gaap:LongTermDebtAndCapitalLeaseObligations" scale="3" id="f-866">977</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-139" decimals="-3" name="us-gaap:LongTermDebtAndCapitalLeaseObligations" format="ixt:num-dot-decimal" scale="3" id="f-867">2,932</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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"/></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="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"/></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="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"/></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="6" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Term loan facilities, net of debt issuance costs</span></td><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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-59" decimals="-3" name="us-gaap:DebtAndCapitalLeaseObligations" format="ixt:num-dot-decimal" scale="3" id="f-868">4,882</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 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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-139" decimals="-3" name="us-gaap:DebtAndCapitalLeaseObligations" format="ixt:num-dot-decimal" scale="3" id="f-869">6,837</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"/></tr></table></div></ix:nonNumeric><div><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:112%">On December 13, 2021, the credit facility and non-revolving term facility with EDC were refinanced into one $<ix:nonFraction unitRef="usd" contextRef="c-140" decimals="INF" name="us-gaap:DebtInstrumentFaceAmount" format="ixt:num-dot-decimal" scale="3" id="f-870">20,000</ix:nonFraction> term loan, with quarterly principal and interest payments. On May 31, 2024, the Company amended the loan agreement with EDC to permit the asset transfer of certain property, plant, and equipment previously pledged to the loan into Cespira, removal of Fuel System Solutions Inc. as a borrower, added Westport Fuel Systems Canada Inc. as a borrower and modified the securities pledged to the loan. The loan is secured by share pledges in the Company's equity interest in Cespira.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:112%">Throughout the term of certain of these financing arrangements, the Company is required to meet certain financial and non-financial covenants. As at June&#160;30, 2025, the Company is in compliance with all covenants under the financing arrangements.</span></div></ix:nonNumeric><div style="margin-top:5pt;text-align:justify"><span><br/></span></div><div id="i608fb9ff67a8405292e36940766acecf_109"></div><ix:nonNumeric contextRef="c-1" name="us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" id="f-871" escape="true"><ix:continuation id="f-859-1"><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The principal repayment schedule of long-term debt is as follows as at June&#160;30, 2025: </span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.976%"><tr><td style="width:1.0%"/><td style="width:78.663%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.538%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.399%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><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:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Term loan facility</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Remainder of 2025</span></td><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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-59" decimals="-3" name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear" format="ixt:num-dot-decimal" scale="3" id="f-872">1,953</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2026</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-59" decimals="-3" name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" format="ixt:num-dot-decimal" scale="3" id="f-873">2,929</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><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: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 #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-59" decimals="-3" name="us-gaap:DebtInstrumentCarryingAmount" format="ixt:num-dot-decimal" scale="3" id="f-874">4,882</ix:nonFraction>&#160;</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 colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div></ix:continuation></ix:nonNumeric><div id="i608fb9ff67a8405292e36940766acecf_124"></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',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:94.5pt;width:100%"><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"/><td style="width:98.900%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Nexa Extra Bold',sans-serif;font-size:18pt;font-weight:700;line-height:100%">WESTPORT FUEL SYSTEMS INC.</span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Notes to Condensed Consolidated Interim Financial Statements (unaudited)<br/></span><span style="font-family:'Montserrat Medium',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><br/></span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(Expressed in thousands of United States dollars, except share and per share amounts)</span></td></tr><tr><td colspan="3" style="border-bottom:2pt solid #000000;border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;Three and six months ended June&#160;30, 2025 and 2024</span></div></td></tr></table></div></div><ix:nonNumeric contextRef="c-1" name="us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" id="f-875" continuedAt="f-875-1" escape="true"><div><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">13.          Share capital, stock options and other stock-based plans:</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%"> </span></div><div><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:112%">During the three and six months ended June 30, 2025, the Company issued <ix:nonFraction unitRef="shares" contextRef="c-39" decimals="INF" name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation" format="ixt:num-dot-decimal" scale="0" id="f-876">24,273</ix:nonFraction> and <ix:nonFraction unitRef="shares" contextRef="c-53" decimals="INF" name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation" format="ixt:num-dot-decimal" scale="0" id="f-877">68,071</ix:nonFraction> common shares, respectively, net of cancellations, upon exercises of share units (three and six months ended June 30, 2024 &#8211; <ix:nonFraction unitRef="shares" contextRef="c-13" decimals="INF" name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation" format="ixt:num-dot-decimal" scale="0" id="f-878">35,210</ix:nonFraction> and <ix:nonFraction unitRef="shares" contextRef="c-29" decimals="INF" name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation" format="ixt:num-dot-decimal" scale="0" id="f-879">83,862</ix:nonFraction> common shares, respectively). The Company issues&#160;shares from treasury to satisfy share unit exercises.</span></div></ix:nonNumeric><div style="text-align:justify"><span><br/></span></div><div id="i608fb9ff67a8405292e36940766acecf_127"></div><ix:continuation id="f-875-1" continuedAt="f-875-2"><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(a)&#160;&#160;&#160;&#160;Share Units (&#8220;Units&#8221;):</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The value assigned to issued Units and the amounts accrued are recorded as other equity instruments. As Units are exercised or vest and the underlying shares are issued from treasury of the Company, the value is reclassified to share capital.</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-align:justify"><span style="background-color:#ffffff;color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the three and six months ended June 30, 2025</span><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, the Company recognized $<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="f-880">451</ix:nonFraction> and $<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="f-881">736</ix:nonFraction>, respectively (three and six months ended June 30, 2024 - $<ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" format="ixt:num-dot-decimal" scale="3" id="f-882">1,083</ix:nonFraction> and $<ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" format="ixt:num-dot-decimal" scale="3" id="f-883">1,492</ix:nonFraction>, respectively) of stock-based compensation associated with the Westport Omnibus Plan. The Westport Omnibus Plan aims to advance the Company's interests by encouraging employees, consultants and non-employee directors to receive equity-based compensation and incentives. The plan outlines the stock-based options types, eligibility and vesting terms.</span></div><ix:nonNumeric contextRef="c-1" name="us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" id="f-884" escape="true"><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A continuity of the Units issued under the Westport Omnibus Plan are as follows:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"><tr><td style="width:1.0%"/><td style="width:31.939%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.905%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.905%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.905%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.910%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Six months ended June 30, 2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Six months ended June 30, 2024</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Number&#160;of<br/>Units</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Weighted<br/>average<br/>grant<br/>date&#160;fair<br/>value<br/>(CDN&#160;$)</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Number&#160;of<br/>Units</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Weighted<br/>average<br/>grant<br/>date&#160;fair<br/>value<br/>(CDN&#160;$)</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Outstanding, beginning of period</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-141" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber" format="ixt:num-dot-decimal" scale="0" id="f-885">524,322</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="cadPerShare" contextRef="c-141" decimals="2" name="wprt:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingWeightedAverageGrantDateFairValue" scale="0" id="f-886">11.75</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-142" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber" format="ixt:num-dot-decimal" scale="0" id="f-887">478,643</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="cadPerShare" contextRef="c-142" decimals="2" name="wprt:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingWeightedAverageGrantDateFairValue" scale="0" id="f-888">15.68</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Granted</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-143" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted" format="ixt:num-dot-decimal" scale="0" id="f-889">137,151</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="cadPerShare" contextRef="c-143" decimals="2" name="wprt:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGrantedWeightedAverageGrantDateFairValue" scale="0" id="f-890">3.99</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-144" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted" format="ixt:num-dot-decimal" scale="0" id="f-891">169,835</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="cadPerShare" contextRef="c-144" decimals="2" name="wprt:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGrantedWeightedAverageGrantDateFairValue" scale="0" id="f-892">8.56</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Exercised</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="c-143" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised" format="ixt:num-dot-decimal" scale="0" id="f-893">68,071</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="cadPerShare" contextRef="c-143" decimals="2" name="wprt:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercisedWeightedAverageGrantDateFairValue" scale="0" id="f-894">17.48</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="c-144" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised" format="ixt:num-dot-decimal" scale="0" id="f-895">83,862</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="cadPerShare" contextRef="c-144" decimals="2" name="wprt:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercisedWeightedAverageGrantDateFairValue" scale="0" id="f-896">17.93</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Forfeited/expired</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="c-143" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirations" format="ixt:num-dot-decimal" scale="0" id="f-897">117,296</ix:nonFraction>)</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="cadPerShare" contextRef="c-143" decimals="2" name="wprt:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirationsWeightedAverageGrantDateFairValue" scale="0" id="f-898">11.36</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="c-144" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirations" format="ixt:num-dot-decimal" scale="0" id="f-899">38,406</ix:nonFraction>)</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="cadPerShare" contextRef="c-144" decimals="2" name="wprt:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirationsWeightedAverageGrantDateFairValue" scale="0" id="f-900">26.07</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Outstanding, end of period</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-145" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber" format="ixt:num-dot-decimal" scale="0" id="f-901">476,106</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="cadPerShare" contextRef="c-145" decimals="2" name="wprt:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingWeightedAverageGrantDateFairValue" scale="0" id="f-902">8.78</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-146" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber" format="ixt:num-dot-decimal" scale="0" id="f-903">526,210</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="cadPerShare" contextRef="c-146" decimals="2" name="wprt:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingWeightedAverageGrantDateFairValue" scale="0" id="f-904">12.23</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Units outstanding and exercisable, end of period</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-145" decimals="INF" name="wprt:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingAndExercisableNumber" scale="0" id="f-905">491</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #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:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="cadPerShare" contextRef="c-145" decimals="2" name="wprt:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingAndExercisableWeightedAverageGrantDateFairValue" scale="0" id="f-906">31.07</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #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-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-146" decimals="INF" name="wprt:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingAndExercisableNumber" format="ixt:num-dot-decimal" scale="0" id="f-907">15,052</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #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:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="cadPerShare" contextRef="c-146" decimals="2" name="wprt:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingAndExercisableWeightedAverageGrantDateFairValue" scale="0" id="f-908">11.41</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div></ix:nonNumeric><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="background-color:#ffffff;color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the </span><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">six months ended June 30, 2025</span><span style="background-color:#ffffff;color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, </span><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:nonFraction unitRef="shares" contextRef="c-143" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted" format="ixt:num-dot-decimal" scale="0" id="f-909">137,151</ix:nonFraction> share units were granted to certain employees and directors (six months ended June 30, 2024 - <ix:nonFraction unitRef="shares" contextRef="c-144" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted" format="ixt:num-dot-decimal" scale="0" id="f-910">169,835</ix:nonFraction>). This included <ix:nonFraction unitRef="shares" contextRef="c-147" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted" format="ixt:fixed-zero" scale="0" id="f-911">nil</ix:nonFraction> restricted share units (&#8220;RSUs&#8221;) (six months ended June 30, 2024 - <ix:nonFraction unitRef="shares" contextRef="c-148" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted" format="ixt:num-dot-decimal" scale="0" id="f-912">50,000</ix:nonFraction>), <ix:nonFraction unitRef="shares" contextRef="c-149" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted" format="ixt:fixed-zero" scale="0" id="f-913">nil</ix:nonFraction>  performance share units (&#8220;PSUs&#8221;) (six months ended June 30, 2024 - <ix:nonFraction unitRef="shares" contextRef="c-150" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted" format="ixt:fixed-zero" scale="0" id="f-914">nil</ix:nonFraction>) and <ix:nonFraction unitRef="shares" contextRef="c-151" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted" format="ixt:num-dot-decimal" scale="0" id="f-915">137,151</ix:nonFraction> deferred share units ("DSUs") (six months ended June 30, 2024 - <ix:nonFraction unitRef="shares" contextRef="c-152" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted" format="ixt:num-dot-decimal" scale="0" id="f-916">119,835</ix:nonFraction>). </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Values of PSUs are determined using the Monte&#8211;Carlo Simulation Model. RSUs typically vest over a <ix:nonNumeric contextRef="c-147" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" format="ixt-sec:durwordsen" id="f-917">three-year</ix:nonNumeric> period so the actual value received by the individual depends on the share price on the day such RSUs are settled for common shares, not the date of grant. Vesting of DSUs shall occur immediately prior to the resignation, retirement or termination of directorship, in accordance with the terms of Westport's Omnibus Plan.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As at June&#160;30, 2025, $<ix:nonFraction unitRef="usd" contextRef="c-145" decimals="-3" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" scale="3" id="f-918">540</ix:nonFraction>&#160;of compensation expense related to Units awarded has yet to be recognized in results from operations and will be recognized ratably over <ix:nonNumeric contextRef="c-143" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" format="ixt-sec:duryear" id="f-919">1.6</ix:nonNumeric> years.</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',serif;font-size:10pt;font-weight:400;line-height:120%">16</span></div></div></div><div id="i608fb9ff67a8405292e36940766acecf_130"></div><hr style="page-break-after:always"/><div style="min-height:94.5pt;width:100%"><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"/><td style="width:98.900%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Nexa Extra Bold',sans-serif;font-size:18pt;font-weight:700;line-height:100%">WESTPORT FUEL SYSTEMS INC.</span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Notes to Condensed Consolidated Interim Financial Statements (unaudited)<br/></span><span style="font-family:'Montserrat Medium',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><br/></span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(Expressed in thousands of United States dollars, except share and per share amounts)</span></td></tr><tr><td colspan="3" style="border-bottom:2pt solid #000000;border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;Three and six months ended June&#160;30, 2025 and 2024</span></div></td></tr></table></div></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">13.          Share capital, stock options and other stock-based plans (continued):</span></div><div style="text-align:justify"><span><br/></span></div><ix:continuation id="f-875-2" continuedAt="f-875-3"><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(b)&#160;&#160;&#160;&#160;Aggregate intrinsic values:</span></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><ix:nonNumeric contextRef="c-1" name="wprt:ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardIntrinsicValueTableTextBlock" id="f-920" escape="true"><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The aggregate intrinsic value of the Company&#8217;s share units at June&#160;30, 2025 as follows: </span></div><div style="margin-top:5pt"><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:79.016%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.054%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">June 30, 2025</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(CDN $)</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Share units:</span></td><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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Outstanding</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" format="ixt:num-dot-decimal" scale="3" id="f-921">2,578</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Exercisable</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" scale="3" id="f-922">15</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Exercised</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" scale="3" id="f-923">285</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div></ix:nonNumeric></ix:continuation><div id="i608fb9ff67a8405292e36940766acecf_133"></div><div style="margin-top:5pt"><span><br/></span></div><ix:continuation id="f-875-3"><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(c)&#160;&#160;&#160;&#160;Stock-based compensation:</span></div><div style="text-align:justify"><span><br/></span></div><ix:nonNumeric contextRef="c-1" name="us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" id="f-924" escape="true"><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Stock-based compensation associated with the Unit plans is included in operating expenses as follows:</span></div><div style="margin-top:5pt"><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:38.081%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.373%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.373%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.373%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.380%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Three Months Ended June 30,</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Six Months Ended June 30,</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2024</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Cost of revenue</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-153" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" format="ixt:fixed-zero" scale="3" id="f-925">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-154" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="f-926">36</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-155" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" format="ixt:fixed-zero" scale="3" id="f-927">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-156" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="f-928">77</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Research and development</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-157" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="f-929">15</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-158" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="f-930">53</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-159" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="f-931">28</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-160" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="f-932">163</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">General and administrative</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-161" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="f-933">433</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-162" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="f-934">945</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-163" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="f-935">680</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-164" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" format="ixt:num-dot-decimal" scale="3" id="f-936">1,144</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Sales and marketing</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-165" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="f-937">3</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-166" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="f-938">49</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-167" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="f-939">28</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-168" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="f-940">108</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="f-941">451</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" format="ixt:num-dot-decimal" scale="3" id="f-942">1,083</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="f-943">736</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" format="ixt:num-dot-decimal" scale="3" id="f-944">1,492</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div></ix:nonNumeric><div><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Of the stock-based compensation expense recognized in the three and six months ended June 30, 2025, $<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="wprt:ShareBasedPaymentArrangementExpenseSettledInShares" scale="3" id="f-945">181</ix:nonFraction> and $<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="wprt:ShareBasedPaymentArrangementExpenseSettledInShares" scale="3" id="f-946">393</ix:nonFraction> will settle in shares and $<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="wprt:ShareBasedPaymentArrangementExpenseSettledInCash" scale="3" id="f-947">270</ix:nonFraction> and $<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="wprt:ShareBasedPaymentArrangementExpenseSettledInCash" scale="3" id="f-948">343</ix:nonFraction> will settle in cash respectively (three and six months ended June 30, 2024 - $<ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="wprt:ShareBasedPaymentArrangementExpenseSettledInShares" scale="3" id="f-949">302</ix:nonFraction> and $<ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="wprt:ShareBasedPaymentArrangementExpenseSettledInShares" scale="3" id="f-950">633</ix:nonFraction> will settle in shares and $<ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="wprt:ShareBasedPaymentArrangementExpenseSettledInCash" scale="3" id="f-951">781</ix:nonFraction> and $<ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="wprt:ShareBasedPaymentArrangementExpenseSettledInCash" scale="3" id="f-952">859</ix:nonFraction> will settle in cash, respectively).</span></div></ix:continuation><div><span><br/></span></div><div id="i608fb9ff67a8405292e36940766acecf_136"></div><ix:nonNumeric contextRef="c-1" name="us-gaap:RelatedPartyTransactionsDisclosureTextBlock" id="f-953" escape="true"><div><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">14.          Related party transactions:</span></div><div><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's related parties are Cespira, directors, officers and shareholders that own more than 10% of the Company's shares.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company engages in transactions with Cespira primarily through the provision of services and the sale of inventory under the transitional services agreement and cross-charges.</span></div><div style="text-align:justify"><span><br/></span></div><ix:nonNumeric contextRef="c-1" name="us-gaap:ScheduleOfRelatedPartyTransactionsTableTextBlock" id="f-954" escape="true"><div style="margin-bottom:6pt;margin-top:6pt;text-align:justify"><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:39.250%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.373%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.373%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.373%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.379%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Related party transactions with Cespira</span></td><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Three months ended June 30,</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Six months ended June 30,</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2024</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Sales of goods, services, and other income</span></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-169" decimals="-3" name="us-gaap:RelatedPartyTransactionAmountsOfTransaction" format="ixt:num-dot-decimal" scale="3" id="f-955">9,721</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-170" decimals="-3" name="us-gaap:RelatedPartyTransactionAmountsOfTransaction" scale="3" id="f-956">534</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-171" decimals="-3" name="us-gaap:RelatedPartyTransactionAmountsOfTransaction" format="ixt:num-dot-decimal" scale="3" id="f-957">15,280</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-172" decimals="-3" name="us-gaap:RelatedPartyTransactionAmountsOfTransaction" scale="3" id="f-958">534</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Inventory purchased, services and other expenses</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-173" decimals="-3" name="us-gaap:RelatedPartyTransactionAmountsOfTransaction" format="ixt:num-dot-decimal" scale="3" id="f-959">1,288</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-174" decimals="-3" name="us-gaap:RelatedPartyTransactionAmountsOfTransaction" format="ixt:fixed-zero" scale="3" id="f-960">&#8212;</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-175" decimals="-3" name="us-gaap:RelatedPartyTransactionAmountsOfTransaction" format="ixt:num-dot-decimal" scale="3" id="f-961">1,898</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-176" decimals="-3" name="us-gaap:RelatedPartyTransactionAmountsOfTransaction" format="ixt:fixed-zero" scale="3" id="f-962">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:6pt;margin-top:6pt;text-align:justify"><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:60.888%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.613%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.615%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Related party balances with Cespira</span></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">June 30, 2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Receivables (note 6)</span></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-177" decimals="-3" name="us-gaap:OtherReceivablesNetCurrent" format="ixt:num-dot-decimal" scale="3" id="f-963">12,505</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-178" decimals="-3" name="us-gaap:OtherReceivablesNetCurrent" format="ixt:num-dot-decimal" scale="3" id="f-964">4,973</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Payables (note 10)</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-177" decimals="-3" name="us-gaap:AccountsPayableCurrentAndNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-965">2,001</ix:nonFraction>&#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:'Montserrat',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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-178" decimals="-3" name="us-gaap:AccountsPayableCurrentAndNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-966">1,137</ix:nonFraction>&#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></table></div></ix:nonNumeric></ix:nonNumeric><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',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:94.5pt;width:100%"><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"/><td style="width:98.900%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Nexa Extra Bold',sans-serif;font-size:18pt;font-weight:700;line-height:100%">WESTPORT FUEL SYSTEMS INC.</span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Notes to Condensed Consolidated Interim Financial Statements (unaudited)<br/></span><span style="font-family:'Montserrat Medium',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><br/></span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(Expressed in thousands of United States dollars, except share and per share amounts)</span></td></tr><tr><td colspan="3" style="border-bottom:2pt solid #000000;border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;Three and six months ended June&#160;30, 2025 and 2024</span></div></td></tr></table></div></div><div style="margin-bottom:6pt;margin-top:6pt;text-align:justify"><span><br/></span></div><div id="i608fb9ff67a8405292e36940766acecf_145"></div><ix:nonNumeric contextRef="c-1" name="us-gaap:CommitmentsAndContingenciesDisclosureTextBlock" id="f-967" escape="true"><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">15.          Commitments and contingencies:</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%"> </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(a)&#160;&#160;&#160;&#160;Contractual commitments</span></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company is a party to a variety of agreements in the ordinary course of business under which it is obligated to indemnify a third party with respect to certain matters. Typically, these obligations arise as a result of contracts for sale of the Company&#8217;s product to customers where the Company provides indemnification against losses arising from matters such as product liabilities. The potential impact on the Company&#8217;s financial results is not subject to reasonable estimation because considerable uncertainty exists as to whether claims will be made and the final outcome of potential claims. To date, the Company has not incurred significant costs related to these types of indemnifications.</span></div><div><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(b) &#160;&#160;&#160;&#160;Contingencies</span></div><div style="text-align:justify"><span><br/></span></div><div style="margin-bottom:8pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company is engaged in certain legal actions and tax audits in the ordinary course of business and believes that, based on the information currently available, the ultimate outcome of these actions will not have a material adverse effect on our operating results, liquidity or financial position.</span></div></ix:nonNumeric><div id="i608fb9ff67a8405292e36940766acecf_148"></div><ix:nonNumeric contextRef="c-1" name="us-gaap:SegmentReportingDisclosureTextBlock" id="f-968" continuedAt="f-968-1" escape="true"><div><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">16.          Segment information:</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%"> </span></div><div style="text-indent:-36pt"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As a result of the classification of the Light-Duty segment as discontinued operations (note 5), the Company reports its results in the following <ix:nonFraction unitRef="segment" contextRef="c-1" decimals="INF" name="us-gaap:NumberOfReportableSegments" format="ixt-sec:numwordsen" scale="0" id="f-969">three</ix:nonFraction> reportable segments: High-Pressure Controls &amp; Systems, Heavy-Duty OEM, and Cespira. The prior year comparatives were recast to reflect this change in reportable segments.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Segment earnings or losses before income taxes, interest, depreciation, and amortization ("Segment EBITDA") is the measure of segment profitability used by the Company. The accounting policies of our reportable segments are the same as those applied in our consolidated financial statements. Management prepared the financial results of the Company's reportable segments on basis that is consistent with the manner in which Management internally disaggregates financial information to assist in making internal operating decisions. Certain common costs and expenses were allocated among segments and presented differently than the Company would for stand-alone financial information prepared in accordance with GAAP. These include certain costs and expenses of shared services, such as IT, human resources, legal, finance and supply chain management. Segment EBITDA is not defined under US GAAP and may not be comparable to similarly titled measures used by other companies and should not be considered a substitute for net earnings or other results reported in accordance with GAAP.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's Chief Operating Decision Maker ("CODM") uses Segment EBITDA disclosed below to evaluate the performance of its reportable segments. The Company believes Segment EBITDA is most reflective of the operational profitability or loss of its reportable segments. The CODM uses this information to drive decisions and resource allocations. Segment EBITDA is used as the key profitability measure when the Company sets its annual budget.</span></div></ix:nonNumeric><div style="text-align:justify"><span><br/></span></div><div id="i608fb9ff67a8405292e36940766acecf_154"></div><div style="margin-bottom:6pt;margin-top:5pt;text-align:justify"><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',serif;font-size:10pt;font-weight:400;line-height:120%">18</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:94.5pt;width:100%"><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"/><td style="width:98.900%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Nexa Extra Bold',sans-serif;font-size:18pt;font-weight:700;line-height:100%">WESTPORT FUEL SYSTEMS INC.</span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Notes to Condensed Consolidated Interim Financial Statements (unaudited)<br/></span><span style="font-family:'Montserrat Medium',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><br/></span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(Expressed in thousands of United States dollars, except share and per share amounts)</span></td></tr><tr><td colspan="3" style="border-bottom:2pt solid #000000;border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;Three and six months ended June&#160;30, 2025 and 2024</span></div></td></tr></table></div></div><ix:continuation id="f-968-1" continuedAt="f-968-2"><div style="margin-bottom:6pt;margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">16.          Segment information (continued):</span></div><ix:nonNumeric contextRef="c-1" name="us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock" id="f-970" continuedAt="f-970-1" escape="true"><div><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Financial information by reportable segment as follows: </span></div><div style="margin-top:5pt;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:47.438%"/><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:11.326%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.326%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><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:11.326%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.332%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="21" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Three months ended June 30, 2025</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">High-Pressure Controls &amp; Systems</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Heavy-Duty OEM</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cespira</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total Segment</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Revenue</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-179" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-971">2,896</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-180" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-972">9,602</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-181" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-973">12,020</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-182" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-974">24,518</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of revenue</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-179" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="f-975">2,791</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-180" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="f-976">8,865</ix:nonFraction>&#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="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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-181" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="f-977">13,946</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-182" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="f-978">25,602</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gross profit</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-179" decimals="-3" name="us-gaap:GrossProfit" scale="3" id="f-979">105</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-180" decimals="-3" name="us-gaap:GrossProfit" scale="3" id="f-980">737</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-181" decimals="-3" sign="-" name="us-gaap:GrossProfit" format="ixt:num-dot-decimal" scale="3" id="f-981">1,926</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-182" decimals="-3" sign="-" name="us-gaap:GrossProfit" format="ixt:num-dot-decimal" scale="3" id="f-982">1,084</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Operating expenses:</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Research and development</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-179" decimals="-3" name="us-gaap:ResearchAndDevelopmentExpense" format="ixt:num-dot-decimal" scale="3" id="f-983">1,635</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-180" decimals="-3" name="us-gaap:ResearchAndDevelopmentExpense" scale="3" id="f-984">22</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-181" decimals="-3" name="us-gaap:ResearchAndDevelopmentExpense" format="ixt:num-dot-decimal" scale="3" id="f-985">1,888</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-182" decimals="-3" name="wprt:ResearchAndDevelopmentExpenseAdjustmentForRounding" format="ixt:num-dot-decimal" scale="3" id="f-986">3,545</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">General and administrative</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-179" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" scale="3" id="f-987">386</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-180" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" scale="3" id="f-988">34</ix:nonFraction>&#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="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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-181" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="f-989">2,692</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-182" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="f-990">3,112</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Sales and marketing</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-179" decimals="-3" name="us-gaap:SellingAndMarketingExpense" scale="3" id="f-991">23</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-180" decimals="-3" name="us-gaap:SellingAndMarketingExpense" scale="3" id="f-992">3</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-181" decimals="-3" name="us-gaap:SellingAndMarketingExpense" scale="3" id="f-993">322</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-182" decimals="-3" name="us-gaap:SellingAndMarketingExpense" scale="3" id="f-994">348</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Depreciation and amortization</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-179" decimals="-3" name="us-gaap:DepreciationAmortizationAndAccretionNet" scale="3" id="f-995">59</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-180" decimals="-3" name="us-gaap:DepreciationAmortizationAndAccretionNet" format="ixt:fixed-zero" scale="3" id="f-996">&#8212;</ix:nonFraction>&#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="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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-181" decimals="-3" name="us-gaap:DepreciationAmortizationAndAccretionNet" scale="3" id="f-997">860</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-182" decimals="-3" name="us-gaap:DepreciationAmortizationAndAccretionNet" scale="3" id="f-998">919</ix:nonFraction>&#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:#dbdbdb;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-179" decimals="-3" name="us-gaap:OperatingExpenses" format="ixt:num-dot-decimal" scale="3" id="f-999">2,103</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-180" decimals="-3" name="us-gaap:OperatingExpenses" scale="3" id="f-1000">59</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-181" decimals="-3" name="us-gaap:OperatingExpenses" format="ixt:num-dot-decimal" scale="3" id="f-1001">5,762</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-182" decimals="-3" name="us-gaap:OperatingExpenses" format="ixt:num-dot-decimal" scale="3" id="f-1002">7,924</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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"/><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="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Add back: Depreciation and amortization</span><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline">1</span></div></td><td colspan="3" style="display:none"/><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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-179" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" scale="3" id="f-1003">149</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-180" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" format="ixt:fixed-zero" scale="3" id="f-1004">&#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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-181" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" scale="3" id="f-1005">772</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-182" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" scale="3" id="f-1006">921</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"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Segment EBITDA</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-179" decimals="-3" sign="-" name="wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="f-1007">1,849</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-180" decimals="-3" name="wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization" scale="3" id="f-1008">678</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-181" decimals="-3" sign="-" name="wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="f-1009">6,916</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-182" decimals="-3" sign="-" name="wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="f-1010">8,087</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;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:6pt;margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"><tr><td style="width:1.0%"/><td style="width:47.211%"/><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:11.381%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.387%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.381%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.387%"/><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:11.381%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.387%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.385%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="21" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Three months ended June 30, 2024</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">High-Pressure Controls &amp; Systems</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Heavy-Duty OEM</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cespira</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total Segment</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Revenue</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-183" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-1011">3,562</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-184" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-1012">10,547</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-185" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-1013">4,059</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-186" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-1014">18,168</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of revenue</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-183" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="f-1015">2,453</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-184" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="f-1016">9,297</ix:nonFraction>&#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="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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-185" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="f-1017">3,901</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-186" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="f-1018">15,651</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gross profit</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-183" decimals="-3" name="us-gaap:GrossProfit" format="ixt:num-dot-decimal" scale="3" id="f-1019">1,109</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-184" decimals="-3" name="us-gaap:GrossProfit" format="ixt:num-dot-decimal" scale="3" id="f-1020">1,250</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-185" decimals="-3" name="us-gaap:GrossProfit" scale="3" id="f-1021">158</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-186" decimals="-3" name="us-gaap:GrossProfit" format="ixt:num-dot-decimal" scale="3" id="f-1022">2,517</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Operating expenses:</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Research and development</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-183" decimals="-3" name="us-gaap:ResearchAndDevelopmentExpense" format="ixt:num-dot-decimal" scale="3" id="f-1023">1,408</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-184" decimals="-3" name="us-gaap:ResearchAndDevelopmentExpense" format="ixt:num-dot-decimal" scale="3" id="f-1024">2,052</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-185" decimals="-3" name="us-gaap:ResearchAndDevelopmentExpense" format="ixt:num-dot-decimal" scale="3" id="f-1025">1,121</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-186" decimals="-3" name="us-gaap:ResearchAndDevelopmentExpense" format="ixt:num-dot-decimal" scale="3" id="f-1026">4,581</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">General and administrative</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-183" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" scale="3" id="f-1027">303</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-184" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="f-1028">1,156</ix:nonFraction>&#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="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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-185" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" scale="3" id="f-1029">715</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-186" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="f-1030">2,174</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Sales and marketing</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-183" decimals="-3" name="us-gaap:SellingAndMarketingExpense" scale="3" id="f-1031">130</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-184" decimals="-3" name="us-gaap:SellingAndMarketingExpense" scale="3" id="f-1032">352</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-185" decimals="-3" name="us-gaap:SellingAndMarketingExpense" scale="3" id="f-1033">69</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-186" decimals="-3" name="us-gaap:SellingAndMarketingExpense" scale="3" id="f-1034">551</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Depreciation and amortization</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-183" decimals="-3" name="us-gaap:DepreciationAmortizationAndAccretionNet" scale="3" id="f-1035">43</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-184" decimals="-3" name="us-gaap:DepreciationAmortizationAndAccretionNet" scale="3" id="f-1036">4</ix:nonFraction>&#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="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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-185" decimals="-3" name="us-gaap:DepreciationAmortizationAndAccretionNet" scale="3" id="f-1037">265</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-186" decimals="-3" name="us-gaap:DepreciationAmortizationAndAccretionNet" scale="3" id="f-1038">312</ix:nonFraction>&#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:#dbdbdb;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-183" decimals="-3" name="us-gaap:OperatingExpenses" format="ixt:num-dot-decimal" scale="3" id="f-1039">1,884</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-184" decimals="-3" name="us-gaap:OperatingExpenses" format="ixt:num-dot-decimal" scale="3" id="f-1040">3,564</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-185" decimals="-3" name="us-gaap:OperatingExpenses" format="ixt:num-dot-decimal" scale="3" id="f-1041">2,170</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-186" decimals="-3" name="us-gaap:OperatingExpenses" format="ixt:num-dot-decimal" scale="3" id="f-1042">7,618</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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"/><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="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Add back: Depreciation and amortization</span><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline">1</span></div></td><td colspan="3" style="display:none"/><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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-183" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" scale="3" id="f-1043">118</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-184" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" format="ixt:fixed-zero" scale="3" id="f-1044">&#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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-185" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" scale="3" id="f-1045">505</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-186" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" scale="3" id="f-1046">623</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"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Segment EBITDA</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-183" decimals="-3" sign="-" name="wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization" scale="3" id="f-1047">657</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-184" decimals="-3" sign="-" name="wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="f-1048">2,314</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-185" decimals="-3" sign="-" name="wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="f-1049">1,507</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-186" decimals="-3" sign="-" name="wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="f-1050">4,478</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"/></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><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"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr></table></div></ix:nonNumeric></ix:continuation><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',serif;font-size:10pt;font-weight:400;line-height:120%">19</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:94.5pt;width:100%"><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"/><td style="width:98.900%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Nexa Extra Bold',sans-serif;font-size:18pt;font-weight:700;line-height:100%">WESTPORT FUEL SYSTEMS INC.</span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Notes to Condensed Consolidated Interim Financial Statements (unaudited)<br/></span><span style="font-family:'Montserrat Medium',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><br/></span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(Expressed in thousands of United States dollars, except share and per share amounts)</span></td></tr><tr><td colspan="3" style="border-bottom:2pt solid #000000;border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;Three and six months ended June&#160;30, 2025 and 2024</span></div></td></tr></table></div></div><ix:continuation id="f-970-1" continuedAt="f-970-2"><ix:continuation id="f-968-2" continuedAt="f-968-3"><div><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">16.          Segment information (continued):</span></div><div><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:96.637%"><tr><td style="width:1.0%"/><td style="width:45.647%"/><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:11.759%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.405%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.759%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.405%"/><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:11.759%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.405%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.761%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="21" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Six months ended June 30, 2025</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">High-Pressure Controls &amp; Systems</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Heavy-Duty OEM</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cespira</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total Segment</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Revenue</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-187" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-1051">4,786</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-188" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-1052">15,035</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-189" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-1053">28,819</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-190" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-1054">48,640</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of revenue</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-187" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="f-1055">4,168</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-188" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="f-1056">13,276</ix:nonFraction>&#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="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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-189" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="f-1057">30,230</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-190" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="f-1058">47,674</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gross profit</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-187" decimals="-3" name="us-gaap:GrossProfit" scale="3" id="f-1059">618</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-188" decimals="-3" name="us-gaap:GrossProfit" format="ixt:num-dot-decimal" scale="3" id="f-1060">1,759</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-189" decimals="-3" sign="-" name="us-gaap:GrossProfit" format="ixt:num-dot-decimal" scale="3" id="f-1061">1,411</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-190" decimals="-3" name="us-gaap:GrossProfit" scale="3" id="f-1062">966</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Operating expenses:</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Research and development</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-187" decimals="-3" name="us-gaap:ResearchAndDevelopmentExpense" format="ixt:num-dot-decimal" scale="3" id="f-1063">2,734</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-188" decimals="-3" name="us-gaap:ResearchAndDevelopmentExpense" scale="3" id="f-1064">133</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-189" decimals="-3" name="us-gaap:ResearchAndDevelopmentExpense" format="ixt:num-dot-decimal" scale="3" id="f-1065">4,890</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-190" decimals="-3" name="us-gaap:ResearchAndDevelopmentExpense" format="ixt:num-dot-decimal" scale="3" id="f-1066">7,757</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">General and administrative</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-187" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" scale="3" id="f-1067">705</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-188" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" scale="3" id="f-1068">99</ix:nonFraction>&#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="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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-189" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="f-1069">5,419</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-190" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="f-1070">6,223</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Sales and marketing</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-187" decimals="-3" name="us-gaap:SellingAndMarketingExpense" scale="3" id="f-1071">150</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-188" decimals="-3" name="us-gaap:SellingAndMarketingExpense" scale="3" id="f-1072">23</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-189" decimals="-3" name="us-gaap:SellingAndMarketingExpense" scale="3" id="f-1073">618</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-190" decimals="-3" name="us-gaap:SellingAndMarketingExpense" scale="3" id="f-1074">791</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Depreciation and amortization</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-187" decimals="-3" name="us-gaap:DepreciationAmortizationAndAccretionNet" scale="3" id="f-1075">115</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-188" decimals="-3" name="us-gaap:DepreciationAmortizationAndAccretionNet" format="ixt:fixed-zero" scale="3" id="f-1076">&#8212;</ix:nonFraction>&#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="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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-189" decimals="-3" name="us-gaap:DepreciationAmortizationAndAccretionNet" format="ixt:num-dot-decimal" scale="3" id="f-1077">1,590</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-190" decimals="-3" name="us-gaap:DepreciationAmortizationAndAccretionNet" format="ixt:num-dot-decimal" scale="3" id="f-1078">1,705</ix:nonFraction>&#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:#dbdbdb;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-187" decimals="-3" name="us-gaap:OperatingExpenses" format="ixt:num-dot-decimal" scale="3" id="f-1079">3,704</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-188" decimals="-3" name="us-gaap:OperatingExpenses" scale="3" id="f-1080">255</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-189" decimals="-3" name="us-gaap:OperatingExpenses" format="ixt:num-dot-decimal" scale="3" id="f-1081">12,517</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-190" decimals="-3" name="us-gaap:OperatingExpenses" format="ixt:num-dot-decimal" scale="3" id="f-1082">16,476</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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"/><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="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Add back: Depreciation and amortization</span><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline">1</span></div></td><td colspan="3" style="display:none"/><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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-187" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" scale="3" id="f-1083">289</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-188" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" format="ixt:fixed-zero" scale="3" id="f-1084">&#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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-189" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" format="ixt:num-dot-decimal" scale="3" id="f-1085">2,392</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-190" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" format="ixt:num-dot-decimal" scale="3" id="f-1086">2,681</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"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Segment EBITDA</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-187" decimals="-3" sign="-" name="wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="f-1087">2,797</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-188" decimals="-3" name="wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="f-1088">1,504</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-189" decimals="-3" sign="-" name="wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="f-1089">11,536</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-190" decimals="-3" sign="-" name="wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="f-1090">12,829</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"/></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><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"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr></table></div><div style="margin-bottom:6pt;margin-top:5pt;text-align:center"><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 style="width:46.519%"/><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:11.548%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.395%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.548%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.395%"/><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:11.548%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.395%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.552%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="21" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Six months ended June 30, 2024</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">High-Pressure Controls &amp; Systems</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Heavy-Duty OEM</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cespira</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total Segment</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Revenue</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-191" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-1091">6,049</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-192" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-1092">22,488</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-193" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-1093">4,059</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-194" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-1094">32,596</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of revenue</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-191" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="f-1095">4,413</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-192" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="f-1096">22,307</ix:nonFraction>&#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="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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-193" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="f-1097">3,901</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-194" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="f-1098">30,621</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gross profit</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-191" decimals="-3" name="us-gaap:GrossProfit" format="ixt:num-dot-decimal" scale="3" id="f-1099">1,636</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-192" decimals="-3" name="us-gaap:GrossProfit" scale="3" id="f-1100">181</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-193" decimals="-3" name="us-gaap:GrossProfit" scale="3" id="f-1101">158</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-194" decimals="-3" name="us-gaap:GrossProfit" format="ixt:num-dot-decimal" scale="3" id="f-1102">1,975</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Operating expenses:</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Research and development</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-191" decimals="-3" name="us-gaap:ResearchAndDevelopmentExpense" format="ixt:num-dot-decimal" scale="3" id="f-1103">2,951</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-192" decimals="-3" name="us-gaap:ResearchAndDevelopmentExpense" format="ixt:num-dot-decimal" scale="3" id="f-1104">4,858</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-193" decimals="-3" name="us-gaap:ResearchAndDevelopmentExpense" format="ixt:num-dot-decimal" scale="3" id="f-1105">1,121</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-194" decimals="-3" name="us-gaap:ResearchAndDevelopmentExpense" format="ixt:num-dot-decimal" scale="3" id="f-1106">8,930</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">General and administrative</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-191" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" scale="3" id="f-1107">496</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-192" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="f-1108">2,919</ix:nonFraction>&#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="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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-193" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" scale="3" id="f-1109">715</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-194" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="f-1110">4,130</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Sales and marketing</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-191" decimals="-3" name="us-gaap:SellingAndMarketingExpense" scale="3" id="f-1111">362</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-192" decimals="-3" name="us-gaap:SellingAndMarketingExpense" scale="3" id="f-1112">849</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-193" decimals="-3" name="us-gaap:SellingAndMarketingExpense" scale="3" id="f-1113">69</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-194" decimals="-3" name="us-gaap:SellingAndMarketingExpense" format="ixt:num-dot-decimal" scale="3" id="f-1114">1,280</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Depreciation and amortization</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-191" decimals="-3" name="us-gaap:DepreciationAmortizationAndAccretionNet" scale="3" id="f-1115">85</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-192" decimals="-3" name="us-gaap:DepreciationAmortizationAndAccretionNet" scale="3" id="f-1116">121</ix:nonFraction>&#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="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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-193" decimals="-3" name="us-gaap:DepreciationAmortizationAndAccretionNet" scale="3" id="f-1117">265</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-194" decimals="-3" name="us-gaap:DepreciationAmortizationAndAccretionNet" scale="3" id="f-1118">471</ix:nonFraction>&#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:#dbdbdb;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-191" decimals="-3" name="us-gaap:OperatingExpenses" format="ixt:num-dot-decimal" scale="3" id="f-1119">3,894</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-192" decimals="-3" name="us-gaap:OperatingExpenses" format="ixt:num-dot-decimal" scale="3" id="f-1120">8,747</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-193" decimals="-3" name="us-gaap:OperatingExpenses" format="ixt:num-dot-decimal" scale="3" id="f-1121">2,170</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-194" decimals="-3" name="us-gaap:OperatingExpenses" format="ixt:num-dot-decimal" scale="3" id="f-1122">14,811</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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"/><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="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Add back: Depreciation and amortization</span><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline">1</span></div></td><td colspan="3" style="display:none"/><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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-191" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" scale="3" id="f-1123">226</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-192" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" format="ixt:num-dot-decimal" scale="3" id="f-1124">1,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:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-193" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" scale="3" id="f-1125">505</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-194" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" format="ixt:num-dot-decimal" scale="3" id="f-1126">2,122</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"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Segment EBITDA</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-191" decimals="-3" sign="-" name="wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="f-1127">2,032</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-192" decimals="-3" sign="-" name="wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="f-1128">7,175</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-193" decimals="-3" sign="-" name="wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="f-1129">1,507</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-194" decimals="-3" sign="-" name="wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="f-1130">10,714</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div></ix:continuation></ix:continuation><div style="margin-top:5pt;text-align:justify"><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',serif;font-size:10pt;font-weight:400;line-height:120%">20</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:94.5pt;width:100%"><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"/><td style="width:98.900%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Nexa Extra Bold',sans-serif;font-size:18pt;font-weight:700;line-height:100%">WESTPORT FUEL SYSTEMS INC.</span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Notes to Condensed Consolidated Interim Financial Statements (unaudited)<br/></span><span style="font-family:'Montserrat Medium',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><br/></span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(Expressed in thousands of United States dollars, except share and per share amounts)</span></td></tr><tr><td colspan="3" style="border-bottom:2pt solid #000000;border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;Three and six months ended June&#160;30, 2025 and 2024</span></div></td></tr></table></div></div><ix:continuation id="f-970-2" continuedAt="f-970-3"><ix:continuation id="f-968-3" continuedAt="f-968-4"><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">16.          Segment information (continued):</span></div><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Reconciliations of reportable segment financial information to consolidated statement of operations:</span></div><div style="margin-top:5pt;text-align:justify"><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:38.373%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.081%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.081%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.081%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="width:1.0%"/><td style="width:15.132%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="21" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Three months ended June 30, 2025</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total Segment</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Less: Cespira</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Add: Corporate &amp; unallocated</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total Consolidated</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Revenue</span></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-182" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-1131">24,518</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-195" decimals="-3" sign="-" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-1132">12,020</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-196" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:fixed-zero" scale="3" id="f-1133">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-1134">12,498</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of 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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-182" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="f-1135">25,602</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-195" decimals="-3" sign="-" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="f-1136">13,946</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-196" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:fixed-zero" scale="3" id="f-1137">&#8212;</ix:nonFraction>&#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="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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="f-1138">11,656</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gross profit</span></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-182" decimals="-3" sign="-" name="us-gaap:GrossProfit" format="ixt:num-dot-decimal" scale="3" id="f-1139">1,084</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-195" decimals="-3" name="us-gaap:GrossProfit" format="ixt:num-dot-decimal" scale="3" id="f-1140">1,926</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-196" decimals="-3" name="us-gaap:GrossProfit" format="ixt:fixed-zero" scale="3" id="f-1141">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:GrossProfit" scale="3" id="f-1142">842</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Operating expenses:</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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Research and development</span></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-182" decimals="-3" name="wprt:ResearchAndDevelopmentExpenseAdjustmentForRounding" format="ixt:num-dot-decimal" scale="3" id="f-1143">3,545</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-195" decimals="-3" sign="-" name="us-gaap:ResearchAndDevelopmentExpense" format="ixt:num-dot-decimal" scale="3" id="f-1144">1,888</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-196" decimals="-3" name="us-gaap:ResearchAndDevelopmentExpense" format="ixt:fixed-zero" scale="3" id="f-1145">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="wprt:ResearchAndDevelopmentExpenseAdjustmentForRounding" format="ixt:num-dot-decimal" scale="3" id="f-1146">1,657</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">General and administrative</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-182" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="f-1147">3,112</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-195" decimals="-3" sign="-" name="us-gaap:GeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="f-1148">2,692</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-196" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="f-1149">3,686</ix:nonFraction>&#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="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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="f-1150">4,106</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Sales and marketing</span></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-182" decimals="-3" name="us-gaap:SellingAndMarketingExpense" scale="3" id="f-1151">348</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-195" decimals="-3" sign="-" name="us-gaap:SellingAndMarketingExpense" scale="3" id="f-1152">322</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-196" decimals="-3" name="us-gaap:SellingAndMarketingExpense" scale="3" id="f-1153">264</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:SellingAndMarketingExpense" scale="3" id="f-1154">290</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Depreciation and amortization</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-182" decimals="-3" name="us-gaap:DepreciationAmortizationAndAccretionNet" scale="3" id="f-1155">919</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-195" decimals="-3" sign="-" name="us-gaap:DepreciationAmortizationAndAccretionNet" scale="3" id="f-1156">860</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-196" decimals="-3" name="us-gaap:DepreciationAmortizationAndAccretionNet" scale="3" id="f-1157">47</ix:nonFraction>&#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="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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:DepreciationAmortizationAndAccretionNet" scale="3" id="f-1158">106</ix:nonFraction>&#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:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-182" decimals="-3" name="us-gaap:OperatingExpenses" format="ixt:num-dot-decimal" scale="3" id="f-1159">7,924</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-195" decimals="-3" sign="-" name="us-gaap:OperatingExpenses" format="ixt:num-dot-decimal" scale="3" id="f-1160">5,762</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-196" decimals="-3" name="us-gaap:OperatingExpenses" format="ixt:num-dot-decimal" scale="3" id="f-1161">3,997</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:OperatingExpenses" format="ixt:num-dot-decimal" scale="3" id="f-1162">6,159</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Equity income (loss)</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-182" decimals="-3" name="us-gaap:IncomeLossFromEquityMethodInvestments" format="ixt:fixed-zero" scale="3" id="f-1163">&#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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-195" decimals="-3" name="us-gaap:IncomeLossFromEquityMethodInvestments" format="ixt:fixed-zero" scale="3" id="f-1164">&#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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-196" decimals="-3" sign="-" name="us-gaap:IncomeLossFromEquityMethodInvestments" format="ixt:num-dot-decimal" scale="3" id="f-1165">3,686</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" sign="-" name="us-gaap:IncomeLossFromEquityMethodInvestments" format="ixt:num-dot-decimal" scale="3" id="f-1166">3,686</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"/></tr></table></div><div style="margin-bottom:6pt;margin-top:5pt;text-align:justify"><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:38.373%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.081%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.081%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.081%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="width:1.0%"/><td style="width:15.132%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="21" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Three months ended June 30, 2024</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total Segment</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Less: Cespira</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Add: Corporate &amp; unallocated</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total Consolidated</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Revenue</span></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-186" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-1167">18,168</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-197" decimals="-3" sign="-" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-1168">4,059</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-198" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:fixed-zero" scale="3" id="f-1169">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-1170">14,109</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of 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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-186" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="f-1171">15,651</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-197" decimals="-3" sign="-" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="f-1172">3,901</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-198" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:fixed-zero" scale="3" id="f-1173">&#8212;</ix:nonFraction>&#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="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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="f-1174">11,750</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gross profit</span></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-186" decimals="-3" name="us-gaap:GrossProfit" format="ixt:num-dot-decimal" scale="3" id="f-1175">2,517</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-197" decimals="-3" sign="-" name="us-gaap:GrossProfit" scale="3" id="f-1176">158</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-198" decimals="-3" name="us-gaap:GrossProfit" format="ixt:fixed-zero" scale="3" id="f-1177">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:GrossProfit" format="ixt:num-dot-decimal" scale="3" id="f-1178">2,359</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Operating expenses:</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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Research and development</span></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-186" decimals="-3" name="us-gaap:ResearchAndDevelopmentExpense" format="ixt:num-dot-decimal" scale="3" id="f-1179">4,581</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-197" decimals="-3" sign="-" name="us-gaap:ResearchAndDevelopmentExpense" format="ixt:num-dot-decimal" scale="3" id="f-1180">1,121</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-198" decimals="-3" name="us-gaap:ResearchAndDevelopmentExpense" format="ixt:fixed-zero" scale="3" id="f-1181">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:ResearchAndDevelopmentExpense" format="ixt:num-dot-decimal" scale="3" id="f-1182">3,460</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">General and administrative</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-186" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="f-1183">2,174</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-197" decimals="-3" sign="-" name="us-gaap:GeneralAndAdministrativeExpense" scale="3" id="f-1184">715</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-198" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="f-1185">4,261</ix:nonFraction>&#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="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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="f-1186">5,720</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Sales and marketing</span></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-186" decimals="-3" name="us-gaap:SellingAndMarketingExpense" scale="3" id="f-1187">551</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-197" decimals="-3" sign="-" name="us-gaap:SellingAndMarketingExpense" scale="3" id="f-1188">69</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-198" decimals="-3" name="us-gaap:SellingAndMarketingExpense" scale="3" id="f-1189">480</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:SellingAndMarketingExpense" scale="3" id="f-1190">962</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Depreciation and amortization</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-186" decimals="-3" name="us-gaap:DepreciationAmortizationAndAccretionNet" scale="3" id="f-1191">312</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-197" decimals="-3" sign="-" name="us-gaap:DepreciationAmortizationAndAccretionNet" scale="3" id="f-1192">265</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-198" decimals="-3" name="us-gaap:DepreciationAmortizationAndAccretionNet" scale="3" id="f-1193">51</ix:nonFraction>&#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="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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:DepreciationAmortizationAndAccretionNet" scale="3" id="f-1194">98</ix:nonFraction>&#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:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-186" decimals="-3" name="us-gaap:OperatingExpenses" format="ixt:num-dot-decimal" scale="3" id="f-1195">7,618</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-197" decimals="-3" sign="-" name="us-gaap:OperatingExpenses" format="ixt:num-dot-decimal" scale="3" id="f-1196">2,170</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-198" decimals="-3" name="us-gaap:OperatingExpenses" format="ixt:num-dot-decimal" scale="3" id="f-1197">4,792</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:OperatingExpenses" format="ixt:num-dot-decimal" scale="3" id="f-1198">10,240</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Equity income (loss)</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-186" decimals="-3" name="us-gaap:IncomeLossFromEquityMethodInvestments" format="ixt:fixed-zero" scale="3" id="f-1199">&#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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-197" decimals="-3" name="us-gaap:IncomeLossFromEquityMethodInvestments" format="ixt:fixed-zero" scale="3" id="f-1200">&#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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-198" decimals="-3" sign="-" name="us-gaap:IncomeLossFromEquityMethodInvestments" format="ixt:num-dot-decimal" scale="3" id="f-1201">1,102</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" sign="-" name="us-gaap:IncomeLossFromEquityMethodInvestments" format="ixt:num-dot-decimal" scale="3" id="f-1202">1,102</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"/></tr></table></div><div style="margin-bottom:6pt;margin-top:5pt;text-align:justify"><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:38.373%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.081%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.081%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.081%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="width:1.0%"/><td style="width:15.132%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="21" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Six months ended June 30, 2025</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total Segment</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Less: Cespira</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Add: Corporate &amp; unallocated</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total Consolidated</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Revenue</span></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-190" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-1203">48,640</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-199" decimals="-3" sign="-" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-1204">28,819</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-200" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:fixed-zero" scale="3" id="f-1205">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-1206">19,821</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of 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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-190" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="f-1207">47,674</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-199" decimals="-3" sign="-" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="f-1208">30,230</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-200" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:fixed-zero" scale="3" id="f-1209">&#8212;</ix:nonFraction>&#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="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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="f-1210">17,444</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gross profit</span></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-190" decimals="-3" name="us-gaap:GrossProfit" scale="3" id="f-1211">966</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-199" decimals="-3" name="us-gaap:GrossProfit" format="ixt:num-dot-decimal" scale="3" id="f-1212">1,411</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-200" decimals="-3" name="us-gaap:GrossProfit" format="ixt:fixed-zero" scale="3" id="f-1213">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:GrossProfit" format="ixt:num-dot-decimal" scale="3" id="f-1214">2,377</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Operating expenses:</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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Research and development</span></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-190" decimals="-3" name="us-gaap:ResearchAndDevelopmentExpense" format="ixt:num-dot-decimal" scale="3" id="f-1215">7,757</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-199" decimals="-3" sign="-" name="us-gaap:ResearchAndDevelopmentExpense" format="ixt:num-dot-decimal" scale="3" id="f-1216">4,890</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-200" decimals="-3" name="us-gaap:ResearchAndDevelopmentExpense" format="ixt:fixed-zero" scale="3" id="f-1217">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:ResearchAndDevelopmentExpense" format="ixt:num-dot-decimal" scale="3" id="f-1218">2,867</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">General and administrative</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-190" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="f-1219">6,223</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-199" decimals="-3" sign="-" name="us-gaap:GeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="f-1220">5,419</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-200" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="f-1221">5,974</ix:nonFraction>&#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="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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="f-1222">6,778</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Sales and marketing</span></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-190" decimals="-3" name="us-gaap:SellingAndMarketingExpense" scale="3" id="f-1223">791</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-199" decimals="-3" sign="-" name="us-gaap:SellingAndMarketingExpense" scale="3" id="f-1224">618</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-200" decimals="-3" name="us-gaap:SellingAndMarketingExpense" scale="3" id="f-1225">560</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:SellingAndMarketingExpense" scale="3" id="f-1226">733</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Depreciation and amortization</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-190" decimals="-3" name="us-gaap:DepreciationAmortizationAndAccretionNet" format="ixt:num-dot-decimal" scale="3" id="f-1227">1,705</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-199" decimals="-3" sign="-" name="us-gaap:DepreciationAmortizationAndAccretionNet" format="ixt:num-dot-decimal" scale="3" id="f-1228">1,590</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-200" decimals="-3" name="us-gaap:DepreciationAmortizationAndAccretionNet" scale="3" id="f-1229">99</ix:nonFraction>&#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="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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:DepreciationAmortizationAndAccretionNet" scale="3" id="f-1230">214</ix:nonFraction>&#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:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-190" decimals="-3" name="us-gaap:OperatingExpenses" format="ixt:num-dot-decimal" scale="3" id="f-1231">16,476</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-199" decimals="-3" sign="-" name="us-gaap:OperatingExpenses" format="ixt:num-dot-decimal" scale="3" id="f-1232">12,517</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-200" decimals="-3" name="us-gaap:OperatingExpenses" format="ixt:num-dot-decimal" scale="3" id="f-1233">6,633</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:OperatingExpenses" format="ixt:num-dot-decimal" scale="3" id="f-1234">10,592</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Equity income (loss)</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-190" decimals="-3" name="us-gaap:IncomeLossFromEquityMethodInvestments" format="ixt:fixed-zero" scale="3" id="f-1235">&#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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-199" decimals="-3" name="us-gaap:IncomeLossFromEquityMethodInvestments" format="ixt:fixed-zero" scale="3" id="f-1236">&#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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-200" decimals="-3" sign="-" name="us-gaap:IncomeLossFromEquityMethodInvestments" format="ixt:num-dot-decimal" scale="3" id="f-1237">7,570</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:IncomeLossFromEquityMethodInvestments" format="ixt:num-dot-decimal" scale="3" id="f-1238">7,570</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"/></tr></table></div></ix:continuation></ix:continuation><div style="margin-bottom:6pt;margin-top:5pt;text-align:justify"><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',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:94.5pt;width:100%"><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"/><td style="width:98.900%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Nexa Extra Bold',sans-serif;font-size:18pt;font-weight:700;line-height:100%">WESTPORT FUEL SYSTEMS INC.</span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Notes to Condensed Consolidated Interim Financial Statements (unaudited)<br/></span><span style="font-family:'Montserrat Medium',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><br/></span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(Expressed in thousands of United States dollars, except share and per share amounts)</span></td></tr><tr><td colspan="3" style="border-bottom:2pt solid #000000;border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;Three and six months ended June&#160;30, 2025 and 2024</span></div></td></tr></table></div></div><ix:continuation id="f-970-3" continuedAt="f-970-4"><ix:continuation id="f-968-4" continuedAt="f-968-5"><div style="margin-bottom:6pt;margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">16.          Segment information (continued):</span></div><div style="margin-bottom:6pt;margin-top:5pt;text-align:justify"><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:38.373%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.081%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.081%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.081%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="width:1.0%"/><td style="width:15.132%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="21" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Six months ended June 30, 2024</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total Segment</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Less: Cespira</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Add: Corporate &amp; unallocated</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total Consolidated</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Revenue</span></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-194" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-1239">32,596</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-201" decimals="-3" sign="-" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-1240">4,059</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-202" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:fixed-zero" scale="3" id="f-1241">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-1242">28,537</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of 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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-194" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="f-1243">30,621</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-201" decimals="-3" sign="-" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="f-1244">3,901</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-202" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:fixed-zero" scale="3" id="f-1245">&#8212;</ix:nonFraction>&#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="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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="f-1246">26,720</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gross profit</span></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-194" decimals="-3" name="us-gaap:GrossProfit" format="ixt:num-dot-decimal" scale="3" id="f-1247">1,975</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-201" decimals="-3" sign="-" name="us-gaap:GrossProfit" scale="3" id="f-1248">158</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-202" decimals="-3" name="us-gaap:GrossProfit" format="ixt:fixed-zero" scale="3" id="f-1249">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:GrossProfit" format="ixt:num-dot-decimal" scale="3" id="f-1250">1,817</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Operating expenses:</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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Research and development</span></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-194" decimals="-3" name="us-gaap:ResearchAndDevelopmentExpense" format="ixt:num-dot-decimal" scale="3" id="f-1251">8,930</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-201" decimals="-3" sign="-" name="us-gaap:ResearchAndDevelopmentExpense" format="ixt:num-dot-decimal" scale="3" id="f-1252">1,121</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-202" decimals="-3" name="us-gaap:ResearchAndDevelopmentExpense" format="ixt:fixed-zero" scale="3" id="f-1253">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:ResearchAndDevelopmentExpense" format="ixt:num-dot-decimal" scale="3" id="f-1254">7,809</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">General and administrative</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-194" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="f-1255">4,130</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-201" decimals="-3" sign="-" name="us-gaap:GeneralAndAdministrativeExpense" scale="3" id="f-1256">715</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-202" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="f-1257">9,500</ix:nonFraction>&#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="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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="f-1258">12,915</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Sales and marketing</span></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-194" decimals="-3" name="us-gaap:SellingAndMarketingExpense" format="ixt:num-dot-decimal" scale="3" id="f-1259">1,280</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-201" decimals="-3" sign="-" name="us-gaap:SellingAndMarketingExpense" scale="3" id="f-1260">69</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-202" decimals="-3" name="us-gaap:SellingAndMarketingExpense" scale="3" id="f-1261">872</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:SellingAndMarketingExpense" format="ixt:num-dot-decimal" scale="3" id="f-1262">2,083</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Depreciation and amortization</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-194" decimals="-3" name="us-gaap:DepreciationAmortizationAndAccretionNet" scale="3" id="f-1263">471</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-201" decimals="-3" sign="-" name="us-gaap:DepreciationAmortizationAndAccretionNet" scale="3" id="f-1264">265</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-202" decimals="-3" name="us-gaap:DepreciationAmortizationAndAccretionNet" scale="3" id="f-1265">250</ix:nonFraction>&#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="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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:DepreciationAmortizationAndAccretionNet" scale="3" id="f-1266">456</ix:nonFraction>&#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:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-194" decimals="-3" name="us-gaap:OperatingExpenses" format="ixt:num-dot-decimal" scale="3" id="f-1267">14,811</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-201" decimals="-3" sign="-" name="us-gaap:OperatingExpenses" format="ixt:num-dot-decimal" scale="3" id="f-1268">2,170</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-202" decimals="-3" name="us-gaap:OperatingExpenses" format="ixt:num-dot-decimal" scale="3" id="f-1269">10,622</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:OperatingExpenses" format="ixt:num-dot-decimal" scale="3" id="f-1270">23,263</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Equity income (loss)</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-194" decimals="-3" name="us-gaap:IncomeLossFromEquityMethodInvestments" format="ixt:fixed-zero" scale="3" id="f-1271">&#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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-201" decimals="-3" name="us-gaap:IncomeLossFromEquityMethodInvestments" format="ixt:fixed-zero" scale="3" id="f-1272">&#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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-202" decimals="-3" sign="-" name="us-gaap:IncomeLossFromEquityMethodInvestments" format="ixt:num-dot-decimal" scale="3" id="f-1273">1,102</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" sign="-" name="us-gaap:IncomeLossFromEquityMethodInvestments" format="ixt:num-dot-decimal" scale="3" id="f-1274">1,102</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"/></tr></table></div><div style="margin-bottom:6pt;margin-top:5pt;text-align:justify"><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:57.379%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.700%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Reconciliation of Segment EBITDA to Loss before income taxes</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Three months ended June 30,</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Six months ended June 30,</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2024</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total Segment EBITDA</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" sign="-" name="wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="f-1275">8,087</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" sign="-" name="wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="f-1276">4,478</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="f-1277">12,829</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" sign="-" name="wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="f-1278">10,714</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Adjustments:</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"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:6pt"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Depreciation and amortization</span><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline">1</span></div></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="wprt:DepreciationDepletionAndAmortizationAdjusted" scale="3" id="f-1279">196</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="wprt:DepreciationDepletionAndAmortizationAdjusted" scale="3" id="f-1280">169</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="wprt:DepreciationDepletionAndAmortizationAdjusted" scale="3" id="f-1281">388</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="wprt:DepreciationDepletionAndAmortizationAdjusted" format="ixt:num-dot-decimal" scale="3" id="f-1282">1,867</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cespira's Segment EBITDA</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-181" decimals="-3" sign="-" name="wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="f-1283">6,916</ix:nonFraction>)</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-185" decimals="-3" sign="-" name="wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="f-1284">1,507</ix:nonFraction>)</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-189" decimals="-3" sign="-" name="wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="f-1285">11,536</ix:nonFraction>)</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-193" decimals="-3" sign="-" name="wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization" format="ixt:num-dot-decimal" scale="3" id="f-1286">1,507</ix:nonFraction>)</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:#dbdbdb;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Loss on investments accounted for under the equity method (note 8)</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" sign="-" name="us-gaap:EquityMethodInvestmentRealizedGainLossOnDisposal" format="ixt:num-dot-decimal" scale="3" id="f-1287">3,686</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" sign="-" name="us-gaap:EquityMethodInvestmentRealizedGainLossOnDisposal" format="ixt:num-dot-decimal" scale="3" id="f-1288">1,102</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:EquityMethodInvestmentRealizedGainLossOnDisposal" format="ixt:num-dot-decimal" scale="3" id="f-1289">7,570</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" sign="-" name="us-gaap:EquityMethodInvestmentRealizedGainLossOnDisposal" format="ixt:num-dot-decimal" scale="3" id="f-1290">1,102</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Corporate and unallocated operating expenses</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-196" decimals="-3" name="us-gaap:OperatingCostsAndExpenses" format="ixt:num-dot-decimal" scale="3" id="f-1291">3,950</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-198" decimals="-3" name="us-gaap:OperatingCostsAndExpenses" format="ixt:num-dot-decimal" scale="3" id="f-1292">4,741</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-200" decimals="-3" name="us-gaap:OperatingCostsAndExpenses" format="ixt:num-dot-decimal" scale="3" id="f-1293">6,534</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-202" decimals="-3" name="us-gaap:OperatingCostsAndExpenses" format="ixt:num-dot-decimal" scale="3" id="f-1294">10,372</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Foreign exchange (loss) gain</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:ForeignCurrencyTransactionGainLossBeforeTax" format="ixt:num-dot-decimal" scale="3" id="f-1295">4,224</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:ForeignCurrencyTransactionGainLossBeforeTax" scale="3" id="f-1296">141</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:ForeignCurrencyTransactionGainLossBeforeTax" format="ixt:num-dot-decimal" scale="3" id="f-1297">5,427</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" sign="-" name="us-gaap:ForeignCurrencyTransactionGainLossBeforeTax" format="ixt:num-dot-decimal" scale="3" id="f-1298">1,795</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gain on deconsolidation</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:DeconsolidationGainOrLossAmount" format="ixt:fixed-zero" scale="3" id="f-1299">&#8212;</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:DeconsolidationGainOrLossAmount" format="ixt:num-dot-decimal" scale="3" id="f-1300">13,266</ix:nonFraction>)</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:DeconsolidationGainOrLossAmount" format="ixt:fixed-zero" scale="3" id="f-1301">&#8212;</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:DeconsolidationGainOrLossAmount" format="ixt:num-dot-decimal" scale="3" id="f-1302">13,266</ix:nonFraction>)</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:#dbdbdb;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest on long-term debt</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:InterestExpenseDebt" scale="3" id="f-1303">166</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:InterestExpenseDebt" scale="3" id="f-1304">288</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:InterestExpenseDebt" scale="3" id="f-1305">358</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:InterestExpenseDebt" scale="3" id="f-1306">603</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest and other income, net of bank charges</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" sign="-" name="us-gaap:InterestIncomeExpenseNonoperatingNet" scale="3" id="f-1307">147</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:InterestIncomeExpenseNonoperatingNet" scale="3" id="f-1308">95</ix:nonFraction>)</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:InterestIncomeExpenseNonoperatingNet" scale="3" id="f-1309">502</ix:nonFraction>)</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:InterestIncomeExpenseNonoperatingNet" scale="3" id="f-1310">21</ix:nonFraction>)</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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Loss before income taxes in continuing operations</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" sign="-" name="wprt:IncomeLossFromContinuingOperationsBeforeIncomeTaxesNoncontrollingInterestAdjustmentForRounding" format="ixt:num-dot-decimal" scale="3" id="f-1311">5,092</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-1312">4,231</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-1313">10,214</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" sign="-" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-1314">11,659</ix:nonFraction>)</span></td><td style="background-color:#dbdbdb;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:5.2pt;font-weight:400;line-height:120%;position:relative;top:-2.8pt;vertical-align:baseline">1</span><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:120%">Depreciation and amortization expenses used in computation for Segment EBITDA and reconciliation to consolidated loss before income taxes are included in cost of revenue and operating expenses on our statement of operations and comprehensive income (loss).</span></div></ix:continuation></ix:continuation><div style="text-align:justify"><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',serif;font-size:10pt;font-weight:400;line-height:120%">22</span></div></div></div><div id="i608fb9ff67a8405292e36940766acecf_157"></div><hr style="page-break-after:always"/><div style="min-height:94.5pt;width:100%"><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"/><td style="width:98.900%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Nexa Extra Bold',sans-serif;font-size:18pt;font-weight:700;line-height:100%">WESTPORT FUEL SYSTEMS INC.</span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Notes to Condensed Consolidated Interim Financial Statements (unaudited)<br/></span><span style="font-family:'Montserrat Medium',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><br/></span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(Expressed in thousands of United States dollars, except share and per share amounts)</span></td></tr><tr><td colspan="3" style="border-bottom:2pt solid #000000;border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;Three and six months ended June&#160;30, 2025 and 2024</span></div></td></tr></table></div></div><ix:continuation id="f-968-5"><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">16.          Segment information (continued):</span></div><ix:continuation id="f-970-4"><div style="margin-top:5pt;text-align:justify"><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:57.233%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.700%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Three months ended June 30,</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Six months ended June 30,</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Total additions to long-lived assets, excluding business combinations</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2024</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">High-Pressure Controls &amp; Systems</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-179" decimals="-3" name="us-gaap:SegmentExpenditureAdditionToLongLivedAssets" scale="3" id="f-1315">821</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-183" decimals="-3" name="us-gaap:SegmentExpenditureAdditionToLongLivedAssets" scale="3" id="f-1316">991</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-187" decimals="-3" name="us-gaap:SegmentExpenditureAdditionToLongLivedAssets" format="ixt:num-dot-decimal" scale="3" id="f-1317">1,379</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-191" decimals="-3" name="us-gaap:SegmentExpenditureAdditionToLongLivedAssets" format="ixt:num-dot-decimal" scale="3" id="f-1318">1,437</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Heavy-Duty OEM</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-180" decimals="-3" name="us-gaap:SegmentExpenditureAdditionToLongLivedAssets" format="ixt:fixed-zero" scale="3" id="f-1319">&#8212;</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-184" decimals="-3" name="us-gaap:SegmentExpenditureAdditionToLongLivedAssets" scale="3" id="f-1320">271</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-188" decimals="-3" name="us-gaap:SegmentExpenditureAdditionToLongLivedAssets" format="ixt:fixed-zero" scale="3" id="f-1321">&#8212;</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-192" decimals="-3" name="us-gaap:SegmentExpenditureAdditionToLongLivedAssets" scale="3" id="f-1322">569</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Corporate and unallocated</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-196" decimals="-3" name="us-gaap:SegmentExpenditureAdditionToLongLivedAssets" scale="3" id="f-1323">1</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-198" decimals="-3" name="us-gaap:SegmentExpenditureAdditionToLongLivedAssets" format="ixt:fixed-zero" scale="3" id="f-1324">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-200" decimals="-3" name="us-gaap:SegmentExpenditureAdditionToLongLivedAssets" scale="3" id="f-1325">16</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-202" decimals="-3" name="us-gaap:SegmentExpenditureAdditionToLongLivedAssets" format="ixt:fixed-zero" scale="3" id="f-1326">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Total consolidated</span></td><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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:SegmentExpenditureAdditionToLongLivedAssets" scale="3" id="f-1327">822</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 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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:SegmentExpenditureAdditionToLongLivedAssets" format="ixt:num-dot-decimal" scale="3" id="f-1328">1,262</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 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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:SegmentExpenditureAdditionToLongLivedAssets" format="ixt:num-dot-decimal" scale="3" id="f-1329">1,395</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 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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:SegmentExpenditureAdditionToLongLivedAssets" format="ixt:num-dot-decimal" scale="3" id="f-1330">2,006</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"/></tr></table></div></ix:continuation><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Cespira's total additions to long-lived assets, excluding business combinations for the three and six months ended June 30, 2025 was $<ix:nonFraction unitRef="usd" contextRef="c-181" decimals="-3" name="us-gaap:SegmentExpenditureAdditionToLongLivedAssets" scale="3" id="f-1331">322</ix:nonFraction> and $<ix:nonFraction unitRef="usd" contextRef="c-189" decimals="-3" name="us-gaap:SegmentExpenditureAdditionToLongLivedAssets" format="ixt:num-dot-decimal" scale="3" id="f-1332">1,571</ix:nonFraction>, respectively (three and six months ended June 30, 2024 was $<ix:nonFraction unitRef="usd" contextRef="c-185" decimals="-3" name="us-gaap:SegmentExpenditureAdditionToLongLivedAssets" scale="3" id="f-1333"><ix:nonFraction unitRef="usd" contextRef="c-193" decimals="-3" name="us-gaap:SegmentExpenditureAdditionToLongLivedAssets" scale="3" id="f-1334">10</ix:nonFraction></ix:nonFraction>).</span></div><div style="text-align:justify"><span><br/></span></div><ix:nonNumeric contextRef="c-1" name="wprt:ScheduleOfGeographicalRevenueInformationTableTextBlock" id="f-1335" escape="true"><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Revenues are attributable to geographical regions based on the location of the Company&#8217;s customers and are presented as a percentage of the Company's continuing revenues, as follows:</span></div><div style="margin-top:5pt"><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:39.835%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.935%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.935%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.935%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.940%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="21" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">% of revenue</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Three months ended June 30,</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Six months ended June 30,</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2024</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Europe</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-203" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="f-1336">79</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-204" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="f-1337">85</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-205" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="f-1338">79</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-206" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="f-1339">87</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Asia</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-207" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="f-1340">16</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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-208" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="f-1341">11</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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-209" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="f-1342">14</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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-210" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="f-1343">10</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Americas</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-211" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="f-1344">5</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-212" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="f-1345">4</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-213" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="f-1346">7</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-214" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="f-1347">3</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div></ix:nonNumeric><ix:nonNumeric contextRef="c-1" name="wprt:ScheduleOfAllocationOfTotalAssetsTableTextBlock" id="f-1348" escape="true"><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The measure of segment assets evaluated by the CODM are total assets as reported on the consolidated balance sheet. Total assets are allocated as follows</span><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:120%">:</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:60.393%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.385%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.640%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.385%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.497%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Total assets by segment</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"><span id="i8d100b17301b49a6a09a6daf522635dc_0-0-1-1-276174"></span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">June 30, 2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Light-Duty (Held-for-sale)</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-215" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="f-1349">201,719</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-216" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="f-1350">207,893</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">High-Pressure Controls &amp; Systems</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-217" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="f-1351">14,112</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-218" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="f-1352">9,026</ix:nonFraction>&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Heavy-Duty OEM</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-219" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="f-1353">12,429</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-220" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="f-1354">9,138</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Corporate</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-221" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="f-1355">43,794</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-222" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="f-1356">65,564</ix:nonFraction>&#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"/><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"/></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"/></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Total consolidated assets</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="f-1357">272,054</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="f-1358">291,621</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div></ix:nonNumeric></ix:continuation><div><span><br/></span></div><div id="i608fb9ff67a8405292e36940766acecf_163"></div><ix:nonNumeric contextRef="c-1" name="us-gaap:FinancialInstrumentsDisclosureTextBlock" id="f-1359" continuedAt="f-1359-1" escape="true"><div><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">17.          Financial instruments:</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%"> </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Financial management risk</span></div><div style="text-align:justify"><span><br/></span></div><div><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company has exposure to liquidity risk, credit risk, foreign currency risk and interest rate risk.</span></div></ix:nonNumeric><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><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',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:94.5pt;width:100%"><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"/><td style="width:98.900%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Nexa Extra Bold',sans-serif;font-size:18pt;font-weight:700;line-height:100%">WESTPORT FUEL SYSTEMS INC.</span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Notes to Condensed Consolidated Interim Financial Statements (unaudited)<br/></span><span style="font-family:'Montserrat Medium',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"><br/></span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(Expressed in thousands of United States dollars, except share and per share amounts)</span></td></tr><tr><td colspan="3" style="border-bottom:2pt solid #000000;border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Montserrat Medium',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;Three and six months ended June&#160;30, 2025 and 2024</span></div></td></tr></table></div></div><ix:continuation id="f-1359-1" continuedAt="f-1359-2"><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">17.          Financial Instruments (continued):</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Liquidity risk </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Liquidity risk is the risk that the Company will not be able to meet its financial obligations as they are due.&#160;The Company has a history of operating losses and negative cash flows from operations. At June&#160;30, 2025, the Company had $<ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:CashCashEquivalentsAndShortTermInvestments" format="ixt:num-dot-decimal" scale="3" id="f-1360">6,064</ix:nonFraction> of cash and cash equivalents, including $<ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:RestrictedCashAndCashEquivalents" scale="3" id="f-1361">397</ix:nonFraction> in restricted cash.</span></div><div style="text-align:justify"><span><br/></span></div><ix:nonNumeric contextRef="c-1" name="srt:ContractualObligationFiscalYearMaturityScheduleTableTextBlock" id="f-1362" escape="true"><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following are the contractual maturities of financial obligations as at June&#160;30, 2025: </span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:33.599%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.709%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.759%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.709%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.709%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.709%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.714%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Carrying<br/>amount</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Contractual<br/>cash&#160;flows</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&lt;&#160;1&#160;year</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1-3&#160;years</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4-5&#160;years</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"/><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&gt;5&#160;years</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accounts payable and accrued liabilities</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-223" decimals="-3" name="us-gaap:ContractualObligation" format="ixt:num-dot-decimal" scale="3" id="f-1363">17,594</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-224" decimals="-3" name="wprt:ContractualObligationsRepaymentsTotal" format="ixt:num-dot-decimal" scale="3" id="f-1364">17,594</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-223" decimals="-3" name="us-gaap:ContractualObligationDueInNextTwelveMonths" format="ixt:num-dot-decimal" scale="3" id="f-1365">17,594</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-223" decimals="-3" name="us-gaap:ContractualObligationDueInSecondAndThirdYear" format="ixt:fixed-zero" scale="3" id="f-1366">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-223" decimals="-3" name="us-gaap:ContractualObligationDueInFourthAndFifthYear" format="ixt:fixed-zero" scale="3" id="f-1367">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-223" decimals="-3" name="us-gaap:ContractualObligationDueAfterFifthYear" format="ixt:fixed-zero" scale="3" id="f-1368">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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"/><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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Term loan facility (note 12)</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-225" decimals="-3" name="us-gaap:ContractualObligation" format="ixt:num-dot-decimal" scale="3" id="f-1369">4,882</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-226" decimals="-3" name="wprt:ContractualObligationsRepaymentsTotal" format="ixt:num-dot-decimal" scale="3" id="f-1370">5,601</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-225" decimals="-3" name="us-gaap:ContractualObligationDueInNextTwelveMonths" format="ixt:num-dot-decimal" scale="3" id="f-1371">4,576</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-225" decimals="-3" name="us-gaap:ContractualObligationDueInSecondAndThirdYear" format="ixt:num-dot-decimal" scale="3" id="f-1372">1,025</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-225" decimals="-3" name="us-gaap:ContractualObligationDueInFourthAndFifthYear" format="ixt:fixed-zero" scale="3" id="f-1373">&#8212;</ix:nonFraction>&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-225" decimals="-3" name="us-gaap:ContractualObligationDueAfterFifthYear" format="ixt:fixed-zero" scale="3" id="f-1374">&#8212;</ix:nonFraction>&#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"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Operating lease obligations (note 11)</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-227" decimals="-3" name="us-gaap:ContractualObligation" format="ixt:num-dot-decimal" scale="3" id="f-1375">1,965</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-228" decimals="-3" name="wprt:ContractualObligationsRepaymentsTotal" format="ixt:num-dot-decimal" scale="3" id="f-1376">2,870</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-227" decimals="-3" name="us-gaap:ContractualObligationDueInNextTwelveMonths" scale="3" id="f-1377">336</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-227" decimals="-3" name="us-gaap:ContractualObligationDueInSecondAndThirdYear" format="ixt:num-dot-decimal" scale="3" id="f-1378">1,203</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-227" decimals="-3" name="us-gaap:ContractualObligationDueInFourthAndFifthYear" format="ixt:num-dot-decimal" scale="3" id="f-1379">1,038</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"/><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-227" decimals="-3" name="us-gaap:ContractualObligationDueAfterFifthYear" scale="3" id="f-1380">293</ix:nonFraction>&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><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:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:ContractualObligation" format="ixt:num-dot-decimal" scale="3" id="f-1381">24,441</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 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:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="wprt:ContractualObligationsRepaymentsTotal" format="ixt:num-dot-decimal" scale="3" id="f-1382">26,065</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 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:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:ContractualObligationDueInNextTwelveMonths" format="ixt:num-dot-decimal" scale="3" id="f-1383">22,506</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 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:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:ContractualObligationDueInSecondAndThirdYear" format="ixt:num-dot-decimal" scale="3" id="f-1384">2,228</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 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:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:ContractualObligationDueInFourthAndFifthYear" format="ixt:num-dot-decimal" scale="3" id="f-1385">1,038</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 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:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:ContractualObligationDueAfterFifthYear" scale="3" id="f-1386">293</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"/></tr></table></div></ix:nonNumeric></ix:continuation><div style="text-align:justify"><span><br/></span></div><div id="i608fb9ff67a8405292e36940766acecf_166"></div><ix:continuation id="f-1359-2"><div><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Fair value of financial instruments</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As at June&#160;30, 2025, cash and cash equivalents are measured at fair value on a recurring basis and are included in Level 1.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The carrying amounts reported in the unaudited condensed consolidated interim balance sheets for accounts receivable, and accounts payable and accrued liabilities approximate their fair values due to the short-term period to maturity of these instruments.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The long-term investments represent the Company's interests in Cespira and is accounted for using the equity method.</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The carrying values reported in the condensed consolidated interim balance sheets for obligations under operating leases, which are based upon discounted cash flows, approximate their fair values.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The carrying value of the term loan facility included in long-term debt (note 12) is carried at amortized cost, which approximate its fair value as at June&#160;30, 2025.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company categorizes its fair value measurements for items measured at fair value on a recurring basis into three categories as follows:</span></div><div style="margin-top:5pt"><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:6.356%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.549%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:81.795%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-left:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Level 1 &#8211;</span></td><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unadjusted quoted prices in active markets for identical assets or liabilities.</span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-left:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-left:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Level 2 &#8211;</span></td><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Observable inputs other than Level 1 prices, such as quoted prices for similar assets or liabilities; quoted prices in markets that are not active; or other inputs that are observable or can be corroborated by observable market data for substantially the full term of the assets or liabilities.</span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-left:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="border-bottom:1pt solid #ffffff;border-left:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-bottom:1pt solid #ffffff;border-left:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Level 3 &#8211;</span></td><td colspan="3" style="border-bottom:1pt solid #ffffff;border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Inputs for the asset or liability that are not based on observable market data (unobservable inputs).</span></td></tr></table></div><div><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">When available, the Company uses quoted market prices to determine fair value and classify such items in Level 1.&#160; When necessary, Level 2 valuations are performed based on quoted market prices for similar instruments in active markets and/or model&#8211;derived valuations with inputs that are observable in active markets.&#160; Level 3 valuations are undertaken in the absence of reliable Level 1 or Level 2 information.</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',serif;font-size:10pt;font-weight:400;line-height:120%">24</span></div></div></div></body></html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>3
<FILENAME>wprt-20250630.xsd
<DESCRIPTION>XBRL TAXONOMY EXTENSION SCHEMA DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with the Workiva Platform-->
<!--Copyright 2025 Workiva-->
<!--r:ad297659-f296-4abb-b3c8-4f222db3fa0c,g:5bd34070-f794-402d-a468-34e565af0565-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:wprt="http://www.westport.com/20250630" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2024-01-31" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://www.westport.com/20250630">
  <xs:import namespace="http://fasb.org/srt/2025" schemaLocation="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd"/>
  <xs:import namespace="http://fasb.org/us-gaap/2025" schemaLocation="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.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/2024-01-31" schemaLocation="https://www.xbrl.org/dtr/type/2024-01-31/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/currency/2025" schemaLocation="https://xbrl.sec.gov/currency/2025/currency-2025.xsd"/>
  <xs:import namespace="http://xbrl.sec.gov/dei/2025" schemaLocation="https://xbrl.sec.gov/dei/2025/dei-2025.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="wprt-20250630_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="wprt-20250630_def.xml" xlink:role="http://www.xbrl.org/2003/role/definitionLinkbaseRef" xlink:type="simple"/>
      <link:linkbaseRef xmlns:xlink="http://www.w3.org/1999/xlink" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="wprt-20250630_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="wprt-20250630_cal.xml" xlink:role="http://www.xbrl.org/2003/role/calculationLinkbaseRef" xlink:type="simple"/>
      <link:roleType id="CoverPage" roleURI="http://www.westport.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="CondensedConsolidatedInterimBalanceSheetsunaudited" roleURI="http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited">
        <link:definition>9952151 - Statement - Condensed Consolidated Interim Balance Sheets (unaudited)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CondensedConsolidatedInterimBalanceSheetsunauditedParenthetical" roleURI="http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunauditedParenthetical">
        <link:definition>9952152 - Statement - Condensed Consolidated Interim Balance Sheets (unaudited) (Parenthetical)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited" roleURI="http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited">
        <link:definition>9952153 - Statement - Condensed Consolidated Interim Statements of Operations and Comprehensive Income (Loss) (unaudited)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CondensedConsolidatedInterimStatementsofShareholdersEquityunaudited" roleURI="http://www.westport.com/role/CondensedConsolidatedInterimStatementsofShareholdersEquityunaudited">
        <link:definition>9952154 - Statement - Condensed Consolidated Interim Statements of Shareholders' Equity (unaudited)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CondensedConsolidatedInterimStatementsofCashFlowsunaudited" roleURI="http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited">
        <link:definition>9952155 - Statement - Condensed Consolidated Interim Statements of Cash Flows (unaudited)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="Companyorganizationandoperations" roleURI="http://www.westport.com/role/Companyorganizationandoperations">
        <link:definition>9952156 - Disclosure - Company organization and 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="LiquidityandGoingConcern" roleURI="http://www.westport.com/role/LiquidityandGoingConcern">
        <link:definition>9952157 - Disclosure - Liquidity and Going Concern</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="Basisofpreparation" roleURI="http://www.westport.com/role/Basisofpreparation">
        <link:definition>9952158 - Disclosure - Basis of preparation</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="Newaccountingpronouncements" roleURI="http://www.westport.com/role/Newaccountingpronouncements">
        <link:definition>9952159 - Disclosure - New accounting pronouncements</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="Heldforsaledisposalgroupanddiscontinuedoperations" roleURI="http://www.westport.com/role/Heldforsaledisposalgroupanddiscontinuedoperations">
        <link:definition>9952160 - Disclosure - Held-for-sale disposal group and discontinued 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="Accountsreceivable" roleURI="http://www.westport.com/role/Accountsreceivable">
        <link:definition>9952161 - Disclosure - Accounts receivable</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.westport.com/role/Inventories">
        <link:definition>9952162 - 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="Longterminvestments" roleURI="http://www.westport.com/role/Longterminvestments">
        <link:definition>9952163 - Disclosure - Long-term investments</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="Propertyplantandequipment" roleURI="http://www.westport.com/role/Propertyplantandequipment">
        <link:definition>9952164 - Disclosure - Property, plant 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="Accountspayableandaccruedliabilities" roleURI="http://www.westport.com/role/Accountspayableandaccruedliabilities">
        <link:definition>9952165 - Disclosure - Accounts payable and accrued liabilities</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="Operatingleasesrightofuseassetsandleaseliabilities" roleURI="http://www.westport.com/role/Operatingleasesrightofuseassetsandleaseliabilities">
        <link:definition>9952166 - Disclosure - Operating leases right-of-use assets and lease liabilities</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="Longtermdebt" roleURI="http://www.westport.com/role/Longtermdebt">
        <link:definition>9952167 - Disclosure - Long-term 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="Sharecapitalstockoptionsandotherstockbasedplans" roleURI="http://www.westport.com/role/Sharecapitalstockoptionsandotherstockbasedplans">
        <link:definition>9952168 - Disclosure - Share capital, stock options and other stock-based plans</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="Relatedpartytransactions" roleURI="http://www.westport.com/role/Relatedpartytransactions">
        <link:definition>9952169 - Disclosure - Related party transactions</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.westport.com/role/Commitmentsandcontingencies">
        <link:definition>9952170 - 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="Segmentinformation" roleURI="http://www.westport.com/role/Segmentinformation">
        <link:definition>9952171 - Disclosure - Segment information</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="Financialinstruments" roleURI="http://www.westport.com/role/Financialinstruments">
        <link:definition>9952172 - Disclosure - Financial instruments</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="BasisofpreparationPolicies" roleURI="http://www.westport.com/role/BasisofpreparationPolicies">
        <link:definition>9955511 - Disclosure - Basis of preparation (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="BasisofpreparationTables" roleURI="http://www.westport.com/role/BasisofpreparationTables">
        <link:definition>9955512 - Disclosure - Basis of preparation (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="HeldforsaledisposalgroupanddiscontinuedoperationsTables" roleURI="http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsTables">
        <link:definition>9955513 - Disclosure - Held-for-sale disposal group and discontinued operations (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="AccountsreceivableTables" roleURI="http://www.westport.com/role/AccountsreceivableTables">
        <link:definition>9955514 - Disclosure - Accounts receivable (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.westport.com/role/InventoriesTables">
        <link:definition>9955515 - 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="LongterminvestmentsTables" roleURI="http://www.westport.com/role/LongterminvestmentsTables">
        <link:definition>9955516 - Disclosure - Long-term investments (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="PropertyplantandequipmentTables" roleURI="http://www.westport.com/role/PropertyplantandequipmentTables">
        <link:definition>9955517 - Disclosure - Property, plant 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="AccountspayableandaccruedliabilitiesTables" roleURI="http://www.westport.com/role/AccountspayableandaccruedliabilitiesTables">
        <link:definition>9955518 - Disclosure - Accounts payable and accrued liabilities (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="OperatingleasesrightofuseassetsandleaseliabilitiesTables" roleURI="http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesTables">
        <link:definition>9955519 - Disclosure - Operating leases right-of-use assets and lease liabilities (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="LongtermdebtTables" roleURI="http://www.westport.com/role/LongtermdebtTables">
        <link:definition>9955520 - Disclosure - Long-term debt (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="SharecapitalstockoptionsandotherstockbasedplansTables" roleURI="http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansTables">
        <link:definition>9955521 - Disclosure - Share capital, stock options and other stock-based plans (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="RelatedpartytransactionsTables" roleURI="http://www.westport.com/role/RelatedpartytransactionsTables">
        <link:definition>9955522 - Disclosure - Related party transactions (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="SegmentinformationTables" roleURI="http://www.westport.com/role/SegmentinformationTables">
        <link:definition>9955523 - Disclosure - Segment information (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="FinancialinstrumentsTables" roleURI="http://www.westport.com/role/FinancialinstrumentsTables">
        <link:definition>9955524 - Disclosure - Financial instruments (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="CompanyorganizationandoperationsDetails" roleURI="http://www.westport.com/role/CompanyorganizationandoperationsDetails">
        <link:definition>9955525 - Disclosure - Company organization and operations (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="LiquidityandGoingConcernDetails" roleURI="http://www.westport.com/role/LiquidityandGoingConcernDetails">
        <link:definition>9955526 - Disclosure - Liquidity and Going Concern (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="BasisofpreparationDetails" roleURI="http://www.westport.com/role/BasisofpreparationDetails">
        <link:definition>9955527 - Disclosure - Basis of preparation (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="HeldforsaledisposalgroupanddiscontinuedoperationsNarrativeDetails" roleURI="http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsNarrativeDetails">
        <link:definition>9955528 - Disclosure - Held-for-sale disposal group and discontinued operations - 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="HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails" roleURI="http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails">
        <link:definition>9955529 - Disclosure - Held-for-sale disposal group and discontinued operations - Assets and Liabilities of the Discontinued Operations (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails" roleURI="http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails">
        <link:definition>9955530 - Disclosure - Held-for-sale disposal group and discontinued operations - Revenue and Expenses of the Discontinued Operations (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="AccountsreceivableScheduleofAccountsReceivableDetails" roleURI="http://www.westport.com/role/AccountsreceivableScheduleofAccountsReceivableDetails">
        <link:definition>9955531 - Disclosure - Accounts receivable - Schedule of Accounts Receivable (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="AccountsreceivableNarrativeDetails" roleURI="http://www.westport.com/role/AccountsreceivableNarrativeDetails">
        <link:definition>9955532 - Disclosure - Accounts receivable - 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="InventoriesScheduleofInventoriesDetails" roleURI="http://www.westport.com/role/InventoriesScheduleofInventoriesDetails">
        <link:definition>9955533 - Disclosure - Inventories - Schedule of Inventories (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.westport.com/role/InventoriesNarrativeDetails">
        <link:definition>9955534 - 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="LongterminvestmentsScheduleofInvestmentsDetails" roleURI="http://www.westport.com/role/LongterminvestmentsScheduleofInvestmentsDetails">
        <link:definition>9955535 - Disclosure - Long-term investments - Schedule of Investments (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="LongterminvestmentsNarrativeDetails" roleURI="http://www.westport.com/role/LongterminvestmentsNarrativeDetails">
        <link:definition>9955536 - Disclosure - Long-term investments - 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="LongterminvestmentsBalanceSheetDetails" roleURI="http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails">
        <link:definition>9955537 - Disclosure - Long-term investments - Balance Sheet (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="LongterminvestmentsIncomeStatementDetails" roleURI="http://www.westport.com/role/LongterminvestmentsIncomeStatementDetails">
        <link:definition>9955538 - Disclosure - Long-term investments - Income Statement (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="PropertyplantandequipmentDetails" roleURI="http://www.westport.com/role/PropertyplantandequipmentDetails">
        <link:definition>9955539 - Disclosure - Property, plant 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="AccountspayableandaccruedliabilitiesDetails" roleURI="http://www.westport.com/role/AccountspayableandaccruedliabilitiesDetails">
        <link:definition>9955540 - Disclosure - Accounts payable and accrued 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="OperatingleasesrightofuseassetsandleaseliabilitiesNarrativeDetails" roleURI="http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesNarrativeDetails">
        <link:definition>9955541 - Disclosure - Operating leases right-of-use assets and lease liabilities - 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="OperatingleasesrightofuseassetsandleaseliabilitiesComponentsofLeaseCostDetails" roleURI="http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesComponentsofLeaseCostDetails">
        <link:definition>9955542 - Disclosure - Operating leases right-of-use assets and lease liabilities - 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="OperatingleasesrightofuseassetsandleaseliabilitiesMaturitiesofLeaseLiabilitiesDetails" roleURI="http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesMaturitiesofLeaseLiabilitiesDetails">
        <link:definition>9955543 - Disclosure - Operating leases right-of-use assets and lease liabilities - 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="LongtermdebtTermLoanFacilitiesDetails" roleURI="http://www.westport.com/role/LongtermdebtTermLoanFacilitiesDetails">
        <link:definition>9955544 - Disclosure - Long-term debt - Term Loan 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="LongtermdebtNarrativeDetails" roleURI="http://www.westport.com/role/LongtermdebtNarrativeDetails">
        <link:definition>9955545 - Disclosure - Long-term debt - 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="LongtermdebtScheduleofMaturitiesonSeniorFinancingDetails" roleURI="http://www.westport.com/role/LongtermdebtScheduleofMaturitiesonSeniorFinancingDetails">
        <link:definition>9955546 - Disclosure - Long-term debt - Schedule of Maturities on Senior Financing (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="SharecapitalstockoptionsandotherstockbasedplansNarrativeDetails" roleURI="http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansNarrativeDetails">
        <link:definition>9955547 - Disclosure - Share capital, stock options and other stock-based plans - 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="SharecapitalstockoptionsandotherstockbasedplansShareunitsDetails" roleURI="http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansShareunitsDetails">
        <link:definition>9955548 - Disclosure - Share capital, stock options and other stock-based plans - Share 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="SharecapitalstockoptionsandotherstockbasedplansAggregateintrinsicvaluesDetails" roleURI="http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansAggregateintrinsicvaluesDetails">
        <link:definition>9955549 - Disclosure - Share capital, stock options and other stock-based plans - Aggregate intrinsic values (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="SharecapitalstockoptionsandotherstockbasedplansStockbasedcompensationDetails" roleURI="http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansStockbasedcompensationDetails">
        <link:definition>9955550 - Disclosure - Share capital, stock options and other stock-based plans - 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="RelatedpartytransactionsDetails" roleURI="http://www.westport.com/role/RelatedpartytransactionsDetails">
        <link:definition>9955551 - Disclosure - Related party transactions (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="SegmentinformationNarrativeDetails" roleURI="http://www.westport.com/role/SegmentinformationNarrativeDetails">
        <link:definition>9955552 - Disclosure - Segment information - 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="SegmentinformationFinancialinformationbybusinesssegmentDetails" roleURI="http://www.westport.com/role/SegmentinformationFinancialinformationbybusinesssegmentDetails">
        <link:definition>9955553 - Disclosure - Segment information - Financial information by business segment (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="SegmentInformationReconciliationofSegmentEBITDAtoLossbeforeincometaxesDetails" roleURI="http://www.westport.com/role/SegmentInformationReconciliationofSegmentEBITDAtoLossbeforeincometaxesDetails">
        <link:definition>9955554 - Disclosure - Segment Information - Reconciliation of Segment EBITDA to Loss before income taxes (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="SegmentinformationAssetsDetails" roleURI="http://www.westport.com/role/SegmentinformationAssetsDetails">
        <link:definition>9955555 - Disclosure - Segment information - Assets (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="SegmentinformationPercentofrevenuebygeographicallocationDetails" roleURI="http://www.westport.com/role/SegmentinformationPercentofrevenuebygeographicallocationDetails">
        <link:definition>9955556 - Disclosure - Segment information - Percent of revenue by geographical location (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="SegmentInformationTotalassetallocationDetails" roleURI="http://www.westport.com/role/SegmentInformationTotalassetallocationDetails">
        <link:definition>9955557 - Disclosure - Segment Information - Total asset allocation (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="FinancialinstrumentsNarrativeDetails" roleURI="http://www.westport.com/role/FinancialinstrumentsNarrativeDetails">
        <link:definition>9955558 - Disclosure - Financial instruments - 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="FinancialinstrumentsFinancialObligationsDetails" roleURI="http://www.westport.com/role/FinancialinstrumentsFinancialObligationsDetails">
        <link:definition>9955559 - Disclosure - Financial instruments - Financial Obligations (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="wprt_OtherEquityInstrument" abstract="false" name="OtherEquityInstrument" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="wprt_EquitySecuritiesOtherOneMember" abstract="true" name="EquitySecuritiesOtherOneMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="wprt_ProceedsFromCollectionOfHoldbackReceivable" abstract="false" name="ProceedsFromCollectionOfHoldbackReceivable" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="wprt_IncreaseDecreaseInWarrantyLiability" abstract="false" name="IncreaseDecreaseInWarrantyLiability" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="wprt_FinancialInstrumentsDisclosureAbstract" abstract="true" name="FinancialInstrumentsDisclosureAbstract" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:stringItemType"/>
  <xs:element id="wprt_HeldForSaleDisposalGroupAndDiscontinuedOperationsPolicyPolicyTextBlock" abstract="false" name="HeldForSaleDisposalGroupAndDiscontinuedOperationsPolicyPolicyTextBlock" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:textBlockItemType"/>
  <xs:element id="wprt_ScheduleOfForeignCurrencyExchangeRateTranslationTableTextBlock" abstract="false" name="ScheduleOfForeignCurrencyExchangeRateTranslationTableTextBlock" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:textBlockItemType"/>
  <xs:element id="wprt_ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardIntrinsicValueTableTextBlock" abstract="false" name="ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardIntrinsicValueTableTextBlock" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:textBlockItemType"/>
  <xs:element id="wprt_ScheduleOfGeographicalRevenueInformationTableTextBlock" abstract="false" name="ScheduleOfGeographicalRevenueInformationTableTextBlock" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:textBlockItemType"/>
  <xs:element id="wprt_ScheduleOfAllocationOfTotalAssetsTableTextBlock" abstract="false" name="ScheduleOfAllocationOfTotalAssetsTableTextBlock" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:textBlockItemType"/>
  <xs:element id="wprt_CespiraJointVentureMember" abstract="true" name="CespiraJointVentureMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="wprt_LightDutyMember" abstract="true" name="LightDutyMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="wprt_DebtInstrumentCovenantMinimumCashRequirement" abstract="false" name="DebtInstrumentCovenantMinimumCashRequirement" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="wprt_ScheduleOfForeignCurrencyTable" abstract="true" name="ScheduleOfForeignCurrencyTable" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrldt:hypercubeItem" type="xbrli:stringItemType"/>
  <xs:element id="wprt_ScheduleOfForeignCurrencyLineItems" abstract="true" name="ScheduleOfForeignCurrencyLineItems" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:stringItemType"/>
  <xs:element id="wprt_AverageForeignCurrencyExchangeRateTranslation1" abstract="false" name="AverageForeignCurrencyExchangeRateTranslation1" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:pureItemType"/>
  <xs:element id="wprt_DisposalGroupIncludingDiscontinuedOperationAdditionsToLongLivedAssets" abstract="false" name="DisposalGroupIncludingDiscontinuedOperationAdditionsToLongLivedAssets" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="wprt_DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrow" abstract="false" name="DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrow" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="wprt_DisposalGroupIncludingDiscontinuedOperationEarnoutsMaximum" abstract="false" name="DisposalGroupIncludingDiscontinuedOperationEarnoutsMaximum" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="wprt_DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrowNumberOfTranches" abstract="false" name="DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrowNumberOfTranches" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="xbrli:integerItemType"/>
  <xs:element id="wprt_DisposalGroupIncludingDiscontinuedOperationInvestmentsNoncurrent" abstract="false" name="DisposalGroupIncludingDiscontinuedOperationInvestmentsNoncurrent" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAssetNoncurrent" abstract="false" name="DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAssetNoncurrent" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="wprt_DisposalGroupIncludingDiscontinuedOperationValuationAllowance" abstract="false" name="DisposalGroupIncludingDiscontinuedOperationValuationAllowance" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityCurrent" abstract="false" name="DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityCurrent" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="wprt_DisposalGroupIncludingDiscontinuedOperationLongTermDebtCurrent" abstract="false" name="DisposalGroupIncludingDiscontinuedOperationLongTermDebtCurrent" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="wprt_DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualCurrent" abstract="false" name="DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualCurrent" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent" abstract="false" name="DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="wprt_DisposalGroupIncludingDiscontinuedOperationLongTermDebtNoncurrent" abstract="false" name="DisposalGroupIncludingDiscontinuedOperationLongTermDebtNoncurrent" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="wprt_DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualNoncurrent" abstract="false" name="DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualNoncurrent" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="wprt_DisposalGroupIncludingDiscontinuedOperationOperatingExpensesAbstract" abstract="true" name="DisposalGroupIncludingDiscontinuedOperationOperatingExpensesAbstract" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:stringItemType"/>
  <xs:element id="wprt_DisposalGroupIncludingDiscontinuedOperationResearchAndDevelopmentExpense" abstract="false" name="DisposalGroupIncludingDiscontinuedOperationResearchAndDevelopmentExpense" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="wprt_DisposalGroupIncludingDiscontinuedOperationSellingAndMarketingExpense" abstract="false" name="DisposalGroupIncludingDiscontinuedOperationSellingAndMarketingExpense" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="wprt_DisposalGroupIncludingDiscontinuedOperationForeignExchangeGainLoss" abstract="false" name="DisposalGroupIncludingDiscontinuedOperationForeignExchangeGainLoss" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="wprt_DisposalGroupIncludingDiscontinuedOperationIncomeLossFromEquityMethodInvestments" abstract="false" name="DisposalGroupIncludingDiscontinuedOperationIncomeLossFromEquityMethodInvestments" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="wprt_DisposalGroupIncludingDiscontinuedOperationImpairmentOfLongLivedAssets" abstract="false" name="DisposalGroupIncludingDiscontinuedOperationImpairmentOfLongLivedAssets" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="wprt_DisposalGroupIncludingDiscontinuedOperationInterestAndOtherIncomeExpense" abstract="false" name="DisposalGroupIncludingDiscontinuedOperationInterestAndOtherIncomeExpense" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="wprt_TradeAccountsReceivable" abstract="false" name="TradeAccountsReceivable" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="wprt_HoldbackReceivablesNetCurrent" abstract="false" name="HoldbackReceivablesNetCurrent" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="wprt_CumminsWestportIncMember" abstract="true" name="CumminsWestportIncMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="wprt_HoldbackTerm" abstract="false" name="HoldbackTerm" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:durationItemType"/>
  <xs:element id="wprt_CespiraCanadaLPMember" abstract="true" name="CespiraCanadaLPMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="wprt_CespiraSwedenABMember" abstract="true" name="CespiraSwedenABMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="wprt_OtherEquityAccountedForInvesteesMember" abstract="true" name="OtherEquityAccountedForInvesteesMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="wprt_ComputerEquipmentAndSoftwareMember" abstract="true" name="ComputerEquipmentAndSoftwareMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="wprt_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour" abstract="false" name="LesseeOperatingLeaseLiabilityToBePaidAfterYearFour" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="wprt_EDCLoanMember" abstract="true" name="EDCLoanMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="wprt_ShareUnitsMember" abstract="true" name="ShareUnitsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="wprt_PerformanceStockUnitsMember" abstract="true" name="PerformanceStockUnitsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="wprt_DeferredShareUnitsMember" abstract="true" name="DeferredShareUnitsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="wprt_ShareBasedPaymentArrangementExpenseSettledInShares" abstract="false" name="ShareBasedPaymentArrangementExpenseSettledInShares" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="wprt_ShareBasedPaymentArrangementExpenseSettledInCash" abstract="false" name="ShareBasedPaymentArrangementExpenseSettledInCash" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingAndExercisableNumber" abstract="false" name="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingAndExercisableNumber" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="xbrli:sharesItemType"/>
  <xs:element id="wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingWeightedAverageGrantDateFairValue" abstract="false" name="ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingWeightedAverageGrantDateFairValue" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="dtr-types:perShareItemType"/>
  <xs:element id="wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGrantedWeightedAverageGrantDateFairValue" abstract="false" name="ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGrantedWeightedAverageGrantDateFairValue" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:perShareItemType"/>
  <xs:element id="wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercisedWeightedAverageGrantDateFairValue" abstract="false" name="ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercisedWeightedAverageGrantDateFairValue" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:perShareItemType"/>
  <xs:element id="wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirationsWeightedAverageGrantDateFairValue" abstract="false" name="ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirationsWeightedAverageGrantDateFairValue" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:perShareItemType"/>
  <xs:element id="wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingAndExercisableWeightedAverageGrantDateFairValue" abstract="false" name="ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingAndExercisableWeightedAverageGrantDateFairValue" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="dtr-types:perShareItemType"/>
  <xs:element id="wprt_CespiraMember" abstract="true" name="CespiraMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="wprt_SalesOfGoodsServicesAndOtherIncomeMember" abstract="true" name="SalesOfGoodsServicesAndOtherIncomeMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="wprt_InventoryPurchasedServicesAndOtherExpensesMember" abstract="true" name="InventoryPurchasedServicesAndOtherExpensesMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="wprt_HighPressureControlsSystemsMember" abstract="true" name="HighPressureControlsSystemsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="wprt_HeavyDutyOEMMember" abstract="true" name="HeavyDutyOEMMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="wprt_ResearchAndDevelopmentExpenseAdjustmentForRounding" abstract="false" name="ResearchAndDevelopmentExpenseAdjustmentForRounding" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="wprt_SegmentEarningsBeforeInterestTaxDepreciationAndAmortization" abstract="false" name="SegmentEarningsBeforeInterestTaxDepreciationAndAmortization" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="wprt_DepreciationDepletionAndAmortizationAdjusted" abstract="false" name="DepreciationDepletionAndAmortizationAdjusted" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="wprt_IncomeLossFromContinuingOperationsBeforeIncomeTaxesNoncontrollingInterestAdjustmentForRounding" abstract="false" name="IncomeLossFromContinuingOperationsBeforeIncomeTaxesNoncontrollingInterestAdjustmentForRounding" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="wprt_ContractualObligationsTypeAxis" abstract="true" name="ContractualObligationsTypeAxis" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrldt:dimensionItem" type="xbrli:stringItemType"/>
  <xs:element id="wprt_ContractualObligationsTypeDomain" abstract="true" name="ContractualObligationsTypeDomain" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="wprt_OperatingLeaseExpensesMember" abstract="true" name="OperatingLeaseExpensesMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="wprt_ContractualObligationsRepaymentsTotal" abstract="false" name="ContractualObligationsRepaymentsTotal" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
</xs:schema>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.CAL
<SEQUENCE>4
<FILENAME>wprt-20250630_cal.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION CALCULATION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with the Workiva Platform-->
<!--Copyright 2025 Workiva-->
<!--r:ad297659-f296-4abb-b3c8-4f222db3fa0c,g:5bd34070-f794-402d-a468-34e565af0565-->
<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.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited" xlink:type="simple" xlink:href="wprt-20250630.xsd#CondensedConsolidatedInterimBalanceSheetsunaudited"/>
  <link:calculationLink xlink:role="http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrent_5583d454-a639-438f-bfe2-088886e14c2b" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LiabilitiesCurrent"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent_041ac469-066e-4777-b84c-743a745357f4" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_5583d454-a639-438f-bfe2-088886e14c2b" xlink:to="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent_041ac469-066e-4777-b84c-743a745357f4" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_3cbd3812-2ead-4192-9b36-debc3c04f5b0" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_5583d454-a639-438f-bfe2-088886e14c2b" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_3cbd3812-2ead-4192-9b36-debc3c04f5b0" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent_eaa97de1-223a-4554-bbb2-0b0a1195054d" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_5583d454-a639-438f-bfe2-088886e14c2b" xlink:to="loc_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent_eaa97de1-223a-4554-bbb2-0b0a1195054d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyAccrualClassifiedCurrent_fdacd499-38a8-4994-babd-a281ab3c78d7" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ProductWarrantyAccrualClassifiedCurrent"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_5583d454-a639-438f-bfe2-088886e14c2b" xlink:to="loc_us-gaap_ProductWarrantyAccrualClassifiedCurrent_fdacd499-38a8-4994-babd-a281ab3c78d7" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent_5936c42d-37a1-4a87-88d0-9df3036bb3a5" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_5583d454-a639-438f-bfe2-088886e14c2b" xlink:to="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent_5936c42d-37a1-4a87-88d0-9df3036bb3a5" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrent_ea7bda87-9834-4b8e-a0bd-e0730bbc1d02" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AssetsCurrent"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_5aaef694-fd0e-42f5-a2bc-e6785864c57c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_ea7bda87-9834-4b8e-a0bd-e0730bbc1d02" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_5aaef694-fd0e-42f5-a2bc-e6785864c57c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent_91d3e495-24f8-4274-b5fc-3e0c125d553d" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountsReceivableNetCurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_ea7bda87-9834-4b8e-a0bd-e0730bbc1d02" xlink:to="loc_us-gaap_AccountsReceivableNetCurrent_91d3e495-24f8-4274-b5fc-3e0c125d553d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryNet_3556015e-a6b1-4c8e-8b2d-1fe899184555" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.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_ea7bda87-9834-4b8e-a0bd-e0730bbc1d02" xlink:to="loc_us-gaap_InventoryNet_3556015e-a6b1-4c8e-8b2d-1fe899184555" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PrepaidExpenseCurrent_d635199b-95d2-40e3-b416-b1c33bc5ecf2" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PrepaidExpenseCurrent"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_ea7bda87-9834-4b8e-a0bd-e0730bbc1d02" xlink:to="loc_us-gaap_PrepaidExpenseCurrent_d635199b-95d2-40e3-b416-b1c33bc5ecf2" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent_b1c80b0c-5a21-4842-8d0c-e1e543bf74bf" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_ea7bda87-9834-4b8e-a0bd-e0730bbc1d02" xlink:to="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent_b1c80b0c-5a21-4842-8d0c-e1e543bf74bf" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Liabilities_62241cfc-29fb-4881-af8d-b510dd17ff33" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_Liabilities"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrent_f5360d86-f503-4d45-8da7-7414601ecdd6" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.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_62241cfc-29fb-4881-af8d-b510dd17ff33" xlink:to="loc_us-gaap_LiabilitiesCurrent_f5360d86-f503-4d45-8da7-7414601ecdd6" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_7bd20efd-9040-4c20-9e14-e4111fa09d4f" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.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_62241cfc-29fb-4881-af8d-b510dd17ff33" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_7bd20efd-9040-4c20-9e14-e4111fa09d4f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtAndCapitalLeaseObligations_1f5c669d-4a9f-4d8e-900c-e545ae8d68d8" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligations"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Liabilities_62241cfc-29fb-4881-af8d-b510dd17ff33" xlink:to="loc_us-gaap_LongTermDebtAndCapitalLeaseObligations_1f5c669d-4a9f-4d8e-900c-e545ae8d68d8" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherLiabilitiesNoncurrent_b65ab6f5-e44b-40d7-b7c4-a229f15b5501" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherLiabilitiesNoncurrent"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Liabilities_62241cfc-29fb-4881-af8d-b510dd17ff33" xlink:to="loc_us-gaap_OtherLiabilitiesNoncurrent_b65ab6f5-e44b-40d7-b7c4-a229f15b5501" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent_f4e03dfb-6bdb-4e2e-a3f4-d9bf1859dc09" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Liabilities_62241cfc-29fb-4881-af8d-b510dd17ff33" xlink:to="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent_f4e03dfb-6bdb-4e2e-a3f4-d9bf1859dc09" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_5a997c01-cfbb-4f07-8987-915b920309a2" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StockholdersEquity"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockValue_cca80443-8eaf-4be3-9a4f-3435a64c5bb9" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommonStockValue"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_5a997c01-cfbb-4f07-8987-915b920309a2" xlink:to="loc_us-gaap_CommonStockValue_cca80443-8eaf-4be3-9a4f-3435a64c5bb9" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_OtherEquityInstrument_ca9a95d9-686c-466b-9b39-922d90028640" xlink:href="wprt-20250630.xsd#wprt_OtherEquityInstrument"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_5a997c01-cfbb-4f07-8987-915b920309a2" xlink:to="loc_wprt_OtherEquityInstrument_ca9a95d9-686c-466b-9b39-922d90028640" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalCommonStock_38115916-6fb0-477f-96df-dd5bb76e9991" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.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_5a997c01-cfbb-4f07-8987-915b920309a2" xlink:to="loc_us-gaap_AdditionalPaidInCapitalCommonStock_38115916-6fb0-477f-96df-dd5bb76e9991" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit_6310df69-c765-4d29-86d8-81e7e0170631" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RetainedEarningsAccumulatedDeficit"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_5a997c01-cfbb-4f07-8987-915b920309a2" xlink:to="loc_us-gaap_RetainedEarningsAccumulatedDeficit_6310df69-c765-4d29-86d8-81e7e0170631" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_6a825b3b-fd11-4749-8c56-0b37ebc357b3" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_5a997c01-cfbb-4f07-8987-915b920309a2" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_6a825b3b-fd11-4749-8c56-0b37ebc357b3" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Assets_3464e085-6188-45a4-b074-dfd64ee2d774" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_Assets"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrent_08d24ce6-78ee-4d3a-be45-41770b545749" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AssetsCurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_3464e085-6188-45a4-b074-dfd64ee2d774" xlink:to="loc_us-gaap_AssetsCurrent_08d24ce6-78ee-4d3a-be45-41770b545749" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermInvestments_eae3d3a7-08fb-4dde-b428-e1caaa3fbd7b" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LongTermInvestments"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_3464e085-6188-45a4-b074-dfd64ee2d774" xlink:to="loc_us-gaap_LongTermInvestments_eae3d3a7-08fb-4dde-b428-e1caaa3fbd7b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_9c74a2f3-9051-4379-8cff-2c54dbf967d6" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_3464e085-6188-45a4-b074-dfd64ee2d774" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentNet_9c74a2f3-9051-4379-8cff-2c54dbf967d6" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset_3d7abd62-52ae-4de1-9529-96e76e257e7a" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OperatingLeaseRightOfUseAsset"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_3464e085-6188-45a4-b074-dfd64ee2d774" xlink:to="loc_us-gaap_OperatingLeaseRightOfUseAsset_3d7abd62-52ae-4de1-9529-96e76e257e7a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAssetsNoncurrent_bb3d1f41-7d22-4df6-888e-a7bb6c772f1c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherAssetsNoncurrent"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_3464e085-6188-45a4-b074-dfd64ee2d774" xlink:to="loc_us-gaap_OtherAssetsNoncurrent_bb3d1f41-7d22-4df6-888e-a7bb6c772f1c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent_0ea9090b-b4f3-41f0-a426-8c40211f241b" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_3464e085-6188-45a4-b074-dfd64ee2d774" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent_0ea9090b-b4f3-41f0-a426-8c40211f241b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquity_3138e2fd-7ef2-4583-a8bd-754185a3e1ac" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LiabilitiesAndStockholdersEquity"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Liabilities_e34dd7f4-45ef-4649-be24-3189b8479e9b" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.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_3138e2fd-7ef2-4583-a8bd-754185a3e1ac" xlink:to="loc_us-gaap_Liabilities_e34dd7f4-45ef-4649-be24-3189b8479e9b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_b6626c1b-3e87-4960-bdc9-3f3d1cdf621d" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.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_3138e2fd-7ef2-4583-a8bd-754185a3e1ac" xlink:to="loc_us-gaap_StockholdersEquity_b6626c1b-3e87-4960-bdc9-3f3d1cdf621d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingencies_9dce95a6-8357-4725-a5cf-dfd1876371f4" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommitmentsAndContingencies"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_3138e2fd-7ef2-4583-a8bd-754185a3e1ac" xlink:to="loc_us-gaap_CommitmentsAndContingencies_9dce95a6-8357-4725-a5cf-dfd1876371f4" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited" xlink:type="simple" xlink:href="wprt-20250630.xsd#CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited"/>
  <link:calculationLink xlink:role="http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_cb352284-fe47-4c1a-8357-af47edc77e16" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_9dfd471f-0bbb-4a2a-955c-e7f027d1a911" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_cb352284-fe47-4c1a-8357-af47edc77e16" xlink:to="loc_us-gaap_OperatingIncomeLoss_9dfd471f-0bbb-4a2a-955c-e7f027d1a911" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromEquityMethodInvestments_00e07381-bc02-4856-9e6d-9b495fa5c2cb" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeLossFromEquityMethodInvestments"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_cb352284-fe47-4c1a-8357-af47edc77e16" xlink:to="loc_us-gaap_IncomeLossFromEquityMethodInvestments_00e07381-bc02-4856-9e6d-9b495fa5c2cb" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeconsolidationGainOrLossAmount_e50ab4bf-e05c-4f37-838a-35dbb045e759" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DeconsolidationGainOrLossAmount"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_cb352284-fe47-4c1a-8357-af47edc77e16" xlink:to="loc_us-gaap_DeconsolidationGainOrLossAmount_e50ab4bf-e05c-4f37-838a-35dbb045e759" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestExpenseDebt_68563cca-e076-48f8-8ac2-175e1fa34fbe" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InterestExpenseDebt"/>
    <link:calculationArc order="4" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_cb352284-fe47-4c1a-8357-af47edc77e16" xlink:to="loc_us-gaap_InterestExpenseDebt_68563cca-e076-48f8-8ac2-175e1fa34fbe" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestIncomeExpenseNonoperatingNet_4f014f07-465b-42a7-a1b1-909d7f04f0e6" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InterestIncomeExpenseNonoperatingNet"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_cb352284-fe47-4c1a-8357-af47edc77e16" xlink:to="loc_us-gaap_InterestIncomeExpenseNonoperatingNet_4f014f07-465b-42a7-a1b1-909d7f04f0e6" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostsAndExpenses_47d60d4c-a262-4bff-826d-8da70f198e98" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CostsAndExpenses"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpense_d0f57266-67da-4d20-815f-ba920b70d995" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.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_CostsAndExpenses_47d60d4c-a262-4bff-826d-8da70f198e98" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpense_d0f57266-67da-4d20-815f-ba920b70d995" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpense_738c590a-60f0-421b-b6ea-34993a461445" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_GeneralAndAdministrativeExpense"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CostsAndExpenses_47d60d4c-a262-4bff-826d-8da70f198e98" xlink:to="loc_us-gaap_GeneralAndAdministrativeExpense_738c590a-60f0-421b-b6ea-34993a461445" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingAndMarketingExpense_effd924a-7f58-4891-a55c-b6dc5e2bbda8" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SellingAndMarketingExpense"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CostsAndExpenses_47d60d4c-a262-4bff-826d-8da70f198e98" xlink:to="loc_us-gaap_SellingAndMarketingExpense_effd924a-7f58-4891-a55c-b6dc5e2bbda8" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_2ecabb15-27b4-468f-ac16-b01a7b2a4f0e" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ForeignCurrencyTransactionGainLossBeforeTax"/>
    <link:calculationArc order="4" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CostsAndExpenses_47d60d4c-a262-4bff-826d-8da70f198e98" xlink:to="loc_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_2ecabb15-27b4-468f-ac16-b01a7b2a4f0e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DepreciationAmortizationAndAccretionNet_15ed77e4-79c7-4d4d-b5de-2c3635c2c830" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DepreciationAmortizationAndAccretionNet"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CostsAndExpenses_47d60d4c-a262-4bff-826d-8da70f198e98" xlink:to="loc_us-gaap_DepreciationAmortizationAndAccretionNet_15ed77e4-79c7-4d4d-b5de-2c3635c2c830" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_5a623175-47a6-480e-8f61-25a25b2dc89b" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CumulativeTranslationAdjustmentNetOfTaxPeriodIncreaseDecrease_21b5527c-d41a-4dc4-8959-ebd80f1a42da" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CumulativeTranslationAdjustmentNetOfTaxPeriodIncreaseDecrease"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_5a623175-47a6-480e-8f61-25a25b2dc89b" xlink:to="loc_us-gaap_CumulativeTranslationAdjustmentNetOfTaxPeriodIncreaseDecrease_21b5527c-d41a-4dc4-8959-ebd80f1a42da" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OciEquityMethodInvestmentAfterTax_4462b9ec-452c-4453-b278-34b6b5846fb0" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OciEquityMethodInvestmentAfterTax"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_5a623175-47a6-480e-8f61-25a25b2dc89b" xlink:to="loc_us-gaap_OciEquityMethodInvestmentAfterTax_4462b9ec-452c-4453-b278-34b6b5846fb0" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit_67fce772-b8cf-4e79-8372-7ec7f19c4548" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_GrossProfit"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_60808e2e-8f7a-406c-87d4-9446dd62ad8c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_GrossProfit_67fce772-b8cf-4e79-8372-7ec7f19c4548" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_60808e2e-8f7a-406c-87d4-9446dd62ad8c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold_8380e3d5-ad54-4691-9695-b031262412af" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.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_67fce772-b8cf-4e79-8372-7ec7f19c4548" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSold_8380e3d5-ad54-4691-9695-b031262412af" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_f60207ea-7dce-47df-9e00-9bd2aa64fcd8" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit_03fcc106-74b0-469f-aa89-67a506d81932" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.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_f60207ea-7dce-47df-9e00-9bd2aa64fcd8" xlink:to="loc_us-gaap_GrossProfit_03fcc106-74b0-469f-aa89-67a506d81932" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostsAndExpenses_de2f8e24-bc9c-4643-b3c4-5005dc7bd3aa" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CostsAndExpenses"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingIncomeLoss_f60207ea-7dce-47df-9e00-9bd2aa64fcd8" xlink:to="loc_us-gaap_CostsAndExpenses_de2f8e24-bc9c-4643-b3c4-5005dc7bd3aa" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperations_0e8b817c-1960-432b-b885-8349d191b561" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeLossFromContinuingOperations"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_188bc538-b212-4329-9593-a78da7912bca" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperations_0e8b817c-1960-432b-b885-8349d191b561" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_188bc538-b212-4329-9593-a78da7912bca" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_25275433-caec-436f-a5db-4628b45e1860" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperations_0e8b817c-1960-432b-b885-8349d191b561" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_25275433-caec-436f-a5db-4628b45e1860" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareBasic_5cd76d1c-861b-44f6-83da-1946cc3cfa6b" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EarningsPerShareBasic"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsPerBasicShare_c7a925db-dd5c-4a8e-be83-51bececc1a58" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeLossFromContinuingOperationsPerBasicShare"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_EarningsPerShareBasic_5cd76d1c-861b-44f6-83da-1946cc3cfa6b" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsPerBasicShare_c7a925db-dd5c-4a8e-be83-51bececc1a58" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare_2689c185-4e4b-4249-956b-b1b9ab8cbfe3" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_EarningsPerShareBasic_5cd76d1c-861b-44f6-83da-1946cc3cfa6b" xlink:to="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare_2689c185-4e4b-4249-956b-b1b9ab8cbfe3" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareDiluted_29fe1ab0-a9e5-42b8-95d6-5284c92463da" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EarningsPerShareDiluted"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare_31cbf4ff-7ca6-45a8-99c2-5fae7af8f524" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_EarningsPerShareDiluted_29fe1ab0-a9e5-42b8-95d6-5284c92463da" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare_31cbf4ff-7ca6-45a8-99c2-5fae7af8f524" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare_9a1ecf6a-640f-4184-a3fa-d581bf6335e0" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_EarningsPerShareDiluted_29fe1ab0-a9e5-42b8-95d6-5284c92463da" xlink:to="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare_9a1ecf6a-640f-4184-a3fa-d581bf6335e0" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_b60cd993-a976-44e2-9075-3aa81f4db666" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetIncomeLoss"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperations_c7d8a615-9c9f-4442-9579-d30dbbb663ae" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeLossFromContinuingOperations"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetIncomeLoss_b60cd993-a976-44e2-9075-3aa81f4db666" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperations_c7d8a615-9c9f-4442-9579-d30dbbb663ae" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity_910fb287-48fe-4908-ad45-e0cc245732ec" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetIncomeLoss_b60cd993-a976-44e2-9075-3aa81f4db666" xlink:to="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity_910fb287-48fe-4908-ad45-e0cc245732ec" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTax_04ffb69f-438f-4294-afc0-47a4e153601c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ComprehensiveIncomeNetOfTax"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_0f16ed91-f260-4716-8da5-aeb56762595f" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetIncomeLoss"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTax_04ffb69f-438f-4294-afc0-47a4e153601c" xlink:to="loc_us-gaap_NetIncomeLoss_0f16ed91-f260-4716-8da5-aeb56762595f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_7729190f-a07a-4c14-ab1d-938368fefd13" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTax_04ffb69f-438f-4294-afc0-47a4e153601c" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_7729190f-a07a-4c14-ab1d-938368fefd13" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited" xlink:type="simple" xlink:href="wprt-20250630.xsd#CondensedConsolidatedInterimStatementsofCashFlowsunaudited"/>
  <link:calculationLink xlink:role="http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations_920a1209-cab4-4fe4-803b-83f2cc812c20" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RepaymentsOfLongTermLinesOfCredit_403d8fbf-31d1-4bff-b805-828f8c0bb005" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RepaymentsOfLongTermLinesOfCredit"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations_920a1209-cab4-4fe4-803b-83f2cc812c20" xlink:to="loc_us-gaap_RepaymentsOfLongTermLinesOfCredit_403d8fbf-31d1-4bff-b805-828f8c0bb005" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromLinesOfCredit_14f27197-3fb4-4157-9ce1-1672fae15b3f" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ProceedsFromLinesOfCredit"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations_920a1209-cab4-4fe4-803b-83f2cc812c20" xlink:to="loc_us-gaap_ProceedsFromLinesOfCredit_14f27197-3fb4-4157-9ce1-1672fae15b3f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations_aaf4b70c-7bd8-4b19-8fdb-5d332a096dcd" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_a79e987a-95f3-4862-a8db-079f65887045" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.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_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations_aaf4b70c-7bd8-4b19-8fdb-5d332a096dcd" xlink:to="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_a79e987a-95f3-4862-a8db-079f65887045" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments_704e8bf9-6ece-48e7-a501-4328c11f9411" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations_aaf4b70c-7bd8-4b19-8fdb-5d332a096dcd" xlink:to="loc_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments_704e8bf9-6ece-48e7-a501-4328c11f9411" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ProceedsFromCollectionOfHoldbackReceivable_ba0ef749-3fce-4c0f-a84a-4a1fed6c9e39" xlink:href="wprt-20250630.xsd#wprt_ProceedsFromCollectionOfHoldbackReceivable"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations_aaf4b70c-7bd8-4b19-8fdb-5d332a096dcd" xlink:to="loc_wprt_ProceedsFromCollectionOfHoldbackReceivable_ba0ef749-3fce-4c0f-a84a-4a1fed6c9e39" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireEquityMethodInvestments_1a190b37-d015-4500-b3c7-731c2b28d6d7" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PaymentsToAcquireEquityMethodInvestments"/>
    <link:calculationArc order="4" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations_aaf4b70c-7bd8-4b19-8fdb-5d332a096dcd" xlink:to="loc_us-gaap_PaymentsToAcquireEquityMethodInvestments_1a190b37-d015-4500-b3c7-731c2b28d6d7" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_bfc8cdf5-a7b0-40c0-a1ef-c5f84da9aada" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsDisposalGroupIncludingDiscontinuedOperations_b82a874b-2e3b-4f01-9eab-ab5c06aaa38c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsDisposalGroupIncludingDiscontinuedOperations"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_bfc8cdf5-a7b0-40c0-a1ef-c5f84da9aada" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsDisposalGroupIncludingDiscontinuedOperations_b82a874b-2e3b-4f01-9eab-ab5c06aaa38c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_bbefedf2-bd88-435d-b915-689dfdc99330" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_bfc8cdf5-a7b0-40c0-a1ef-c5f84da9aada" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_bbefedf2-bd88-435d-b915-689dfdc99330" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_7f8a7503-7958-4d58-a91f-fdac281144df" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_34ba639b-9022-4327-ac2e-8a8a9ea92f4e" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_7f8a7503-7958-4d58-a91f-fdac281144df" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_34ba639b-9022-4327-ac2e-8a8a9ea92f4e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations_ba66bee1-9228-4f22-850e-58762b7c4fc0" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_7f8a7503-7958-4d58-a91f-fdac281144df" xlink:to="loc_us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations_ba66bee1-9228-4f22-850e-58762b7c4fc0" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations_d63166e9-b707-4f0d-8db5-a3bcaa6fc64c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_7f8a7503-7958-4d58-a91f-fdac281144df" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations_d63166e9-b707-4f0d-8db5-a3bcaa6fc64c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations_e6b620b3-a9f8-4870-bc70-aaa8a2a31d5e" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_7f8a7503-7958-4d58-a91f-fdac281144df" xlink:to="loc_us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations_e6b620b3-a9f8-4870-bc70-aaa8a2a31d5e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations_2fdaa88a-6841-4f8d-8c44-facb4d96b3fb" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_7f8a7503-7958-4d58-a91f-fdac281144df" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations_2fdaa88a-6841-4f8d-8c44-facb4d96b3fb" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashProvidedByUsedInFinancingActivitiesDiscontinuedOperations_8e5b4caf-4332-4107-92ba-ef8250cc74d2" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CashProvidedByUsedInFinancingActivitiesDiscontinuedOperations"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_7f8a7503-7958-4d58-a91f-fdac281144df" xlink:to="loc_us-gaap_CashProvidedByUsedInFinancingActivitiesDiscontinuedOperations_8e5b4caf-4332-4107-92ba-ef8250cc74d2" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_e5f5a135-c68e-4062-9989-f4d0177d23ba" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:calculationArc order="7" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_7f8a7503-7958-4d58-a91f-fdac281144df" xlink:to="loc_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_e5f5a135-c68e-4062-9989-f4d0177d23ba" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOperatingCapital_a38a426a-8431-4268-b256-9a1508ef1512" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInOperatingCapital"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_77585574-4de5-47a6-bcf1-22377a691217" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapital_a38a426a-8431-4268-b256-9a1508ef1512" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_77585574-4de5-47a6-bcf1-22377a691217" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInInventories_694fac16-5beb-4196-b61b-e7fe3aeae15f" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInInventories"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapital_a38a426a-8431-4268-b256-9a1508ef1512" xlink:to="loc_us-gaap_IncreaseDecreaseInInventories_694fac16-5beb-4196-b61b-e7fe3aeae15f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInPrepaidExpense_e3ebcbf1-f0f7-4d43-9a80-8c1c5e7e1d95" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInPrepaidExpense"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapital_a38a426a-8431-4268-b256-9a1508ef1512" xlink:to="loc_us-gaap_IncreaseDecreaseInPrepaidExpense_e3ebcbf1-f0f7-4d43-9a80-8c1c5e7e1d95" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities_02774a72-5780-4ab4-bb05-f1889889006b" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities"/>
    <link:calculationArc order="4" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapital_a38a426a-8431-4268-b256-9a1508ef1512" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities_02774a72-5780-4ab4-bb05-f1889889006b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_IncreaseDecreaseInWarrantyLiability_09427b25-2a98-4e2e-819e-6e7f589a72a0" xlink:href="wprt-20250630.xsd#wprt_IncreaseDecreaseInWarrantyLiability"/>
    <link:calculationArc order="5" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapital_a38a426a-8431-4268-b256-9a1508ef1512" xlink:to="loc_wprt_IncreaseDecreaseInWarrantyLiability_09427b25-2a98-4e2e-819e-6e7f589a72a0" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_a7f78646-d3aa-4f11-ac1b-035bb5f90a6d" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperations_f6ddbc03-5320-4ad0-8e81-f80aaee1ef17" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeLossFromContinuingOperations"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_a7f78646-d3aa-4f11-ac1b-035bb5f90a6d" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperations_f6ddbc03-5320-4ad0-8e81-f80aaee1ef17" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DepreciationDepletionAndAmortization_3d6f6f27-dadf-46c7-96b3-6b6a98e43875" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DepreciationDepletionAndAmortization"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_a7f78646-d3aa-4f11-ac1b-035bb5f90a6d" xlink:to="loc_us-gaap_DepreciationDepletionAndAmortization_3d6f6f27-dadf-46c7-96b3-6b6a98e43875" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensation_3ea8dc22-942e-466a-a807-615ffb554549" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensation"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_a7f78646-d3aa-4f11-ac1b-035bb5f90a6d" xlink:to="loc_us-gaap_ShareBasedCompensation_3ea8dc22-942e-466a-a807-615ffb554549" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_59b00448-e90e-4f0e-b577-4ea83f4de0dc" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ForeignCurrencyTransactionGainLossBeforeTax"/>
    <link:calculationArc order="4" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_a7f78646-d3aa-4f11-ac1b-035bb5f90a6d" xlink:to="loc_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_59b00448-e90e-4f0e-b577-4ea83f4de0dc" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_11dfc43b-985b-4690-b685-d28af486a920" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_a7f78646-d3aa-4f11-ac1b-035bb5f90a6d" xlink:to="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_11dfc43b-985b-4690-b685-d28af486a920" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromEquityMethodInvestments_70061d89-ccad-48e3-846e-ffdfa5935fcb" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeLossFromEquityMethodInvestments"/>
    <link:calculationArc order="6" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_a7f78646-d3aa-4f11-ac1b-035bb5f90a6d" xlink:to="loc_us-gaap_IncomeLossFromEquityMethodInvestments_70061d89-ccad-48e3-846e-ffdfa5935fcb" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestExpenseLongTermDebt_3e4a7302-9453-4f2c-88fd-851dff2afa10" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InterestExpenseLongTermDebt"/>
    <link:calculationArc order="7" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_a7f78646-d3aa-4f11-ac1b-035bb5f90a6d" xlink:to="loc_us-gaap_InterestExpenseLongTermDebt_3e4a7302-9453-4f2c-88fd-851dff2afa10" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryWriteDown_4605cdb8-2303-425c-814e-343f874d9339" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InventoryWriteDown"/>
    <link:calculationArc order="8" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_a7f78646-d3aa-4f11-ac1b-035bb5f90a6d" xlink:to="loc_us-gaap_InventoryWriteDown_4605cdb8-2303-425c-814e-343f874d9339" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeconsolidationGainOrLossAmount_b9208912-5fa7-46e7-9a94-a08a4630665a" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DeconsolidationGainOrLossAmount"/>
    <link:calculationArc order="9" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_a7f78646-d3aa-4f11-ac1b-035bb5f90a6d" xlink:to="loc_us-gaap_DeconsolidationGainOrLossAmount_b9208912-5fa7-46e7-9a94-a08a4630665a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOperatingCapital_37f1a907-8936-4afd-82dc-01d42dff1283" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInOperatingCapital"/>
    <link:calculationArc order="10" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_a7f78646-d3aa-4f11-ac1b-035bb5f90a6d" xlink:to="loc_us-gaap_IncreaseDecreaseInOperatingCapital_37f1a907-8936-4afd-82dc-01d42dff1283" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails"/>
  <link:calculationLink xlink:role="http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation_a3234cf6-a95f-4ee7-a6ab-5cd73fc276be" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent_2e299d4c-af0e-43ee-b9de-48c175d59b72" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation_a3234cf6-a95f-4ee7-a6ab-5cd73fc276be" xlink:to="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent_2e299d4c-af0e-43ee-b9de-48c175d59b72" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent_d306084d-1a70-4761-aaa5-e07f5904cd6f" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation_a3234cf6-a95f-4ee7-a6ab-5cd73fc276be" xlink:to="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent_d306084d-1a70-4761-aaa5-e07f5904cd6f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent_89a7e919-75d1-40ab-8f74-c001ecb1ddd7" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents_3e2c89b9-bba9-4ba6-b476-16aaa7c44d28" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent_89a7e919-75d1-40ab-8f74-c001ecb1ddd7" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents_3e2c89b9-bba9-4ba6-b476-16aaa7c44d28" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet_699ad84b-1d91-4b33-88db-6aa65af918ea" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent_89a7e919-75d1-40ab-8f74-c001ecb1ddd7" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet_699ad84b-1d91-4b33-88db-6aa65af918ea" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationInventoryCurrent_982713cf-da5c-4e11-a5ee-346c46bf4974" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationInventoryCurrent"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent_89a7e919-75d1-40ab-8f74-c001ecb1ddd7" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationInventoryCurrent_982713cf-da5c-4e11-a5ee-346c46bf4974" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent_3998dd84-df1d-46df-a0c0-38537b07cf7b" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent_89a7e919-75d1-40ab-8f74-c001ecb1ddd7" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent_3998dd84-df1d-46df-a0c0-38537b07cf7b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent_80bd61c5-5ca1-4fd3-9189-a4115c055746" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsPayableAndAccruedLiabilitiesCurrent_93cefda3-55ad-4323-a9f2-96b29a5f1692" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsPayableAndAccruedLiabilitiesCurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent_80bd61c5-5ca1-4fd3-9189-a4115c055746" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsPayableAndAccruedLiabilitiesCurrent_93cefda3-55ad-4323-a9f2-96b29a5f1692" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityCurrent_7a94bf57-63b4-488a-8b22-fae5a2f3549a" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityCurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent_80bd61c5-5ca1-4fd3-9189-a4115c055746" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityCurrent_7a94bf57-63b4-488a-8b22-fae5a2f3549a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationLongTermDebtCurrent_815ae676-da15-4d8c-b348-8d6910352a56" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationLongTermDebtCurrent"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent_80bd61c5-5ca1-4fd3-9189-a4115c055746" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationLongTermDebtCurrent_815ae676-da15-4d8c-b348-8d6910352a56" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualCurrent_0bd4f4a3-94d3-4fe8-a221-03ca04836f7d" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualCurrent"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent_80bd61c5-5ca1-4fd3-9189-a4115c055746" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualCurrent_0bd4f4a3-94d3-4fe8-a221-03ca04836f7d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent_c8d3619e-83ee-454c-8dc5-be9f56233e14" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent_2d8212f5-5d45-43c0-b669-7f5c2c3c3253" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent_c8d3619e-83ee-454c-8dc5-be9f56233e14" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent_2d8212f5-5d45-43c0-b669-7f5c2c3c3253" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationLongTermDebtNoncurrent_a85cff96-c779-4863-8163-3d33b5827dae" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationLongTermDebtNoncurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent_c8d3619e-83ee-454c-8dc5-be9f56233e14" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationLongTermDebtNoncurrent_a85cff96-c779-4863-8163-3d33b5827dae" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualNoncurrent_06647de0-ad53-45a5-8f9a-dc86d46ba5ab" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualNoncurrent"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent_c8d3619e-83ee-454c-8dc5-be9f56233e14" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualNoncurrent_06647de0-ad53-45a5-8f9a-dc86d46ba5ab" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationDeferredTaxLiabilities_8b918287-bbd9-4ec9-8f15-e9b513693c60" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationDeferredTaxLiabilities"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent_c8d3619e-83ee-454c-8dc5-be9f56233e14" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationDeferredTaxLiabilities_8b918287-bbd9-4ec9-8f15-e9b513693c60" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentLiabilities_780a3ba6-4993-4b20-b242-8575b05c7961" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentLiabilities"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent_c8d3619e-83ee-454c-8dc5-be9f56233e14" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentLiabilities_780a3ba6-4993-4b20-b242-8575b05c7961" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent_b387dbcf-6e0e-4a58-9ec2-0cf7c7d10076" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationInvestmentsNoncurrent_8e39c22f-af20-478b-878b-72870f120feb" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationInvestmentsNoncurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent_b387dbcf-6e0e-4a58-9ec2-0cf7c7d10076" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationInvestmentsNoncurrent_8e39c22f-af20-478b-878b-72870f120feb" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent_798aafbd-7b7a-4731-a200-5dba402a11d0" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent_b387dbcf-6e0e-4a58-9ec2-0cf7c7d10076" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent_798aafbd-7b7a-4731-a200-5dba402a11d0" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAssetNoncurrent_6282f194-8450-407d-869c-5e73b2ef0323" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAssetNoncurrent"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent_b387dbcf-6e0e-4a58-9ec2-0cf7c7d10076" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAssetNoncurrent_6282f194-8450-407d-869c-5e73b2ef0323" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent_315b90bc-f1d9-4a2d-8a0e-540f782dc5e4" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent_b387dbcf-6e0e-4a58-9ec2-0cf7c7d10076" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent_315b90bc-f1d9-4a2d-8a0e-540f782dc5e4" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationDeferredTaxAssets_971c78cd-2adf-452f-83e3-f51f623b1d1d" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationDeferredTaxAssets"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent_b387dbcf-6e0e-4a58-9ec2-0cf7c7d10076" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationDeferredTaxAssets_971c78cd-2adf-452f-83e3-f51f623b1d1d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationGoodwillNoncurrent_ab8cb742-dfae-44ea-88dc-9156e801c72f" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationGoodwillNoncurrent"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent_b387dbcf-6e0e-4a58-9ec2-0cf7c7d10076" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationGoodwillNoncurrent_ab8cb742-dfae-44ea-88dc-9156e801c72f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets_c94303e3-e579-475b-b855-f3346e706f20" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets"/>
    <link:calculationArc order="7" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent_b387dbcf-6e0e-4a58-9ec2-0cf7c7d10076" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets_c94303e3-e579-475b-b855-f3346e706f20" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation_7a0ebfbf-08af-4307-8b61-e83e0869d4c0" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent_fb75fdf0-6ead-4d31-9bcf-5ffba1723f93" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation_7a0ebfbf-08af-4307-8b61-e83e0869d4c0" xlink:to="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent_fb75fdf0-6ead-4d31-9bcf-5ffba1723f93" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent_8bd54ad6-5926-48a8-b94a-6d9355679c1d" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation_7a0ebfbf-08af-4307-8b61-e83e0869d4c0" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent_8bd54ad6-5926-48a8-b94a-6d9355679c1d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationValuationAllowance_7b0c6490-e1e1-4805-8d27-99007c587b9d" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationValuationAllowance"/>
    <link:calculationArc order="3" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation_7a0ebfbf-08af-4307-8b61-e83e0869d4c0" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationValuationAllowance_7b0c6490-e1e1-4805-8d27-99007c587b9d" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails"/>
  <link:calculationLink xlink:role="http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense_cb3a700c-6613-40cf-8e90-793bad33f220" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationResearchAndDevelopmentExpense_7c0671be-239e-46f2-b2ab-b0fb27f42407" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationResearchAndDevelopmentExpense"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense_cb3a700c-6613-40cf-8e90-793bad33f220" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationResearchAndDevelopmentExpense_7c0671be-239e-46f2-b2ab-b0fb27f42407" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationGeneralAndAdministrativeExpense_597de9ef-ef22-4136-b8b8-1ca7a1dffb58" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationGeneralAndAdministrativeExpense"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense_cb3a700c-6613-40cf-8e90-793bad33f220" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationGeneralAndAdministrativeExpense_597de9ef-ef22-4136-b8b8-1ca7a1dffb58" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationSellingAndMarketingExpense_1f23a9df-e615-4bd0-9f7d-0e6b8aeef16f" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationSellingAndMarketingExpense"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense_cb3a700c-6613-40cf-8e90-793bad33f220" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationSellingAndMarketingExpense_1f23a9df-e615-4bd0-9f7d-0e6b8aeef16f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationForeignExchangeGainLoss_566f0e7b-eb00-4400-9cff-742632b04f21" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationForeignExchangeGainLoss"/>
    <link:calculationArc order="4" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense_cb3a700c-6613-40cf-8e90-793bad33f220" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationForeignExchangeGainLoss_566f0e7b-eb00-4400-9cff-742632b04f21" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization_8ccfe6cb-d6f7-476b-b5dd-067a8c284e49" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense_cb3a700c-6613-40cf-8e90-793bad33f220" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization_8ccfe6cb-d6f7-476b-b5dd-067a8c284e49" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity_87909b13-156b-4e65-a6bd-b0ede917cffd" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax_80bbd728-d499-438f-9d66-0ff4c94f726b" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity_87909b13-156b-4e65-a6bd-b0ede917cffd" xlink:to="loc_us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax_80bbd728-d499-438f-9d66-0ff4c94f726b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation_71ec4661-ed70-4fc0-9039-451d1b3b7f7f" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity_87909b13-156b-4e65-a6bd-b0ede917cffd" xlink:to="loc_us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation_71ec4661-ed70-4fc0-9039-451d1b3b7f7f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss_00507444-ed16-498f-be31-5009ec5cfdef" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue_c5e198d5-cefe-4061-9d5f-63a30360836e" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss_00507444-ed16-498f-be31-5009ec5cfdef" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue_c5e198d5-cefe-4061-9d5f-63a30360836e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold_7174bcff-2d8e-428f-ae20-dcef50bb7773" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss_00507444-ed16-498f-be31-5009ec5cfdef" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold_7174bcff-2d8e-428f-ae20-dcef50bb7773" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss_e268b089-7e9b-40a3-8d93-f104cdce35c3" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss_d2bcc43b-166e-4c30-9035-d04aaf733131" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss_e268b089-7e9b-40a3-8d93-f104cdce35c3" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss_d2bcc43b-166e-4c30-9035-d04aaf733131" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense_ea3d1f04-29e7-4f00-b6f2-c5f04f041e61" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss_e268b089-7e9b-40a3-8d93-f104cdce35c3" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense_ea3d1f04-29e7-4f00-b6f2-c5f04f041e61" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax_2bca3bdf-b944-4a57-8cf1-20bc4c5bed23" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss_aa79d7ca-9e64-4c85-8de2-47afc0e59bbc" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax_2bca3bdf-b944-4a57-8cf1-20bc4c5bed23" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss_aa79d7ca-9e64-4c85-8de2-47afc0e59bbc" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationIncomeLossFromEquityMethodInvestments_3766a724-c46a-4771-93a9-300ab06ec2d3" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationIncomeLossFromEquityMethodInvestments"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax_2bca3bdf-b944-4a57-8cf1-20bc4c5bed23" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationIncomeLossFromEquityMethodInvestments_3766a724-c46a-4771-93a9-300ab06ec2d3" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax_7e2298a1-53d6-45ae-af95-c0db71a52ee9" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax"/>
    <link:calculationArc order="3" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax_2bca3bdf-b944-4a57-8cf1-20bc4c5bed23" xlink:to="loc_us-gaap_DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax_7e2298a1-53d6-45ae-af95-c0db71a52ee9" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationImpairmentOfLongLivedAssets_790f19d2-aca8-486a-9c8a-6d68c9ed17b1" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationImpairmentOfLongLivedAssets"/>
    <link:calculationArc order="4" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax_2bca3bdf-b944-4a57-8cf1-20bc4c5bed23" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationImpairmentOfLongLivedAssets_790f19d2-aca8-486a-9c8a-6d68c9ed17b1" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationInterestExpense_84bac651-fc2c-4a98-904e-6764ac597164" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationInterestExpense"/>
    <link:calculationArc order="5" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax_2bca3bdf-b944-4a57-8cf1-20bc4c5bed23" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationInterestExpense_84bac651-fc2c-4a98-904e-6764ac597164" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationInterestAndOtherIncomeExpense_f79ac096-8875-40f3-86a8-643b6049ba99" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationInterestAndOtherIncomeExpense"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax_2bca3bdf-b944-4a57-8cf1-20bc4c5bed23" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationInterestAndOtherIncomeExpense_f79ac096-8875-40f3-86a8-643b6049ba99" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.westport.com/role/AccountsreceivableScheduleofAccountsReceivableDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#AccountsreceivableScheduleofAccountsReceivableDetails"/>
  <link:calculationLink xlink:role="http://www.westport.com/role/AccountsreceivableScheduleofAccountsReceivableDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent_48a75d58-8897-45ec-bfc1-e0cf2fc3c4d0" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountsReceivableNetCurrent"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_TradeAccountsReceivable_df2d052f-8de6-44d7-9765-cd6854850774" xlink:href="wprt-20250630.xsd#wprt_TradeAccountsReceivable"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccountsReceivableNetCurrent_48a75d58-8897-45ec-bfc1-e0cf2fc3c4d0" xlink:to="loc_wprt_TradeAccountsReceivable_df2d052f-8de6-44d7-9765-cd6854850774" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_HoldbackReceivablesNetCurrent_63b4b00d-e856-4ad3-9293-25df574acf8a" xlink:href="wprt-20250630.xsd#wprt_HoldbackReceivablesNetCurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccountsReceivableNetCurrent_48a75d58-8897-45ec-bfc1-e0cf2fc3c4d0" xlink:to="loc_wprt_HoldbackReceivablesNetCurrent_63b4b00d-e856-4ad3-9293-25df574acf8a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherReceivables_3963f30c-6df6-4f9c-a91f-39098be50201" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherReceivables"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccountsReceivableNetCurrent_48a75d58-8897-45ec-bfc1-e0cf2fc3c4d0" xlink:to="loc_us-gaap_OtherReceivables_3963f30c-6df6-4f9c-a91f-39098be50201" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherReceivablesNetCurrent_cab03872-5baa-4a3e-bdde-2902b7e05ffe" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherReceivablesNetCurrent"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccountsReceivableNetCurrent_48a75d58-8897-45ec-bfc1-e0cf2fc3c4d0" xlink:to="loc_us-gaap_OtherReceivablesNetCurrent_cab03872-5baa-4a3e-bdde-2902b7e05ffe" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_1cf05571-aed7-483c-8742-5fa9b350a1d4" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent"/>
    <link:calculationArc order="5" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccountsReceivableNetCurrent_48a75d58-8897-45ec-bfc1-e0cf2fc3c4d0" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_1cf05571-aed7-483c-8742-5fa9b350a1d4" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.westport.com/role/InventoriesScheduleofInventoriesDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#InventoriesScheduleofInventoriesDetails"/>
  <link:calculationLink xlink:role="http://www.westport.com/role/InventoriesScheduleofInventoriesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryNet_b5ea7e73-3710-4747-906e-0f85e735f814" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InventoryNet"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherInventoryPurchasedGoods_a03a635c-cc5f-48ff-b74c-ed45b81b784a" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherInventoryPurchasedGoods"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_InventoryNet_b5ea7e73-3710-4747-906e-0f85e735f814" xlink:to="loc_us-gaap_OtherInventoryPurchasedGoods_a03a635c-cc5f-48ff-b74c-ed45b81b784a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryFinishedGoods_bc2366d3-3844-46ae-bc46-19d6958ad059" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InventoryFinishedGoods"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_InventoryNet_b5ea7e73-3710-4747-906e-0f85e735f814" xlink:to="loc_us-gaap_InventoryFinishedGoods_bc2366d3-3844-46ae-bc46-19d6958ad059" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#LongterminvestmentsBalanceSheetDetails"/>
  <link:calculationLink xlink:role="http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrent_fe9c32ad-7612-4005-8b12-1ccaa0d4158e" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AssetsCurrent"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_3e9ef014-1fc9-4542-83ca-bd21cac89cff" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_fe9c32ad-7612-4005-8b12-1ccaa0d4158e" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_3e9ef014-1fc9-4542-83ca-bd21cac89cff" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent_65c36d33-7ffb-4676-9233-a9dbcf6a2c64" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountsReceivableNetCurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_fe9c32ad-7612-4005-8b12-1ccaa0d4158e" xlink:to="loc_us-gaap_AccountsReceivableNetCurrent_65c36d33-7ffb-4676-9233-a9dbcf6a2c64" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryNet_9a9a9fab-ec36-4415-ae91-d00a273d397e" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.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_fe9c32ad-7612-4005-8b12-1ccaa0d4158e" xlink:to="loc_us-gaap_InventoryNet_9a9a9fab-ec36-4415-ae91-d00a273d397e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PrepaidExpenseCurrentAndNoncurrent_e21b891f-5a8c-401c-b6a1-b79fb16e2cb3" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PrepaidExpenseCurrentAndNoncurrent"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_fe9c32ad-7612-4005-8b12-1ccaa0d4158e" xlink:to="loc_us-gaap_PrepaidExpenseCurrentAndNoncurrent_e21b891f-5a8c-401c-b6a1-b79fb16e2cb3" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrent_ea1906b8-9581-4320-bb8c-a8264f7d32ce" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LiabilitiesCurrent"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent_f88553ca-cea7-4412-bd14-c461fae8c106" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_ea1906b8-9581-4320-bb8c-a8264f7d32ce" xlink:to="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent_f88553ca-cea7-4412-bd14-c461fae8c106" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermBorrowings_5801b03e-b08e-462c-9016-f6f4b6ecdbb1" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShortTermBorrowings"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_ea1906b8-9581-4320-bb8c-a8264f7d32ce" xlink:to="loc_us-gaap_ShortTermBorrowings_5801b03e-b08e-462c-9016-f6f4b6ecdbb1" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherLiabilitiesCurrent_f54994f3-50a6-4ab3-8e51-f73efb6dbb07" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherLiabilitiesCurrent"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_ea1906b8-9581-4320-bb8c-a8264f7d32ce" xlink:to="loc_us-gaap_OtherLiabilitiesCurrent_f54994f3-50a6-4ab3-8e51-f73efb6dbb07" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilities_cabcd079-fc05-4928-a195-25d637ebe263" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DeferredIncomeTaxLiabilities"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_ea1906b8-9581-4320-bb8c-a8264f7d32ce" xlink:to="loc_us-gaap_DeferredIncomeTaxLiabilities_cabcd079-fc05-4928-a195-25d637ebe263" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsNet_1bf07c2c-8cd2-4c70-8c69-b77596323818" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AssetsNet"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Assets_c2eaf28d-85dd-4236-9f5b-5b99df2fa039" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_Assets"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsNet_1bf07c2c-8cd2-4c70-8c69-b77596323818" xlink:to="loc_us-gaap_Assets_c2eaf28d-85dd-4236-9f5b-5b99df2fa039" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Liabilities_7a1073f3-4c9f-4fc4-8010-93dcef3ab197" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_Liabilities"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsNet_1bf07c2c-8cd2-4c70-8c69-b77596323818" xlink:to="loc_us-gaap_Liabilities_7a1073f3-4c9f-4fc4-8010-93dcef3ab197" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Assets_417469c4-7a74-4b7c-9bfd-9ba394d0f4e3" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_Assets"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrent_88597bb8-0d62-46d2-ba4b-c7818f477f3c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AssetsCurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_417469c4-7a74-4b7c-9bfd-9ba394d0f4e3" xlink:to="loc_us-gaap_AssetsCurrent_88597bb8-0d62-46d2-ba4b-c7818f477f3c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_c7cf9f09-f1aa-444d-8b54-8477c70612d2" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_417469c4-7a74-4b7c-9bfd-9ba394d0f4e3" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentNet_c7cf9f09-f1aa-444d-8b54-8477c70612d2" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_5d14dec2-1247-4a0b-9b25-820442b52b51" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_417469c4-7a74-4b7c-9bfd-9ba394d0f4e3" xlink:to="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_5d14dec2-1247-4a0b-9b25-820442b52b51" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_5bfa7df6-45f5-4993-a3c9-d6632445f107" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_Goodwill"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_417469c4-7a74-4b7c-9bfd-9ba394d0f4e3" xlink:to="loc_us-gaap_Goodwill_5bfa7df6-45f5-4993-a3c9-d6632445f107" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsGross_51c3a758-2352-42a1-b8ee-811d430aeff7" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DeferredTaxAssetsGross"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_417469c4-7a74-4b7c-9bfd-9ba394d0f4e3" xlink:to="loc_us-gaap_DeferredTaxAssetsGross_51c3a758-2352-42a1-b8ee-811d430aeff7" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.westport.com/role/LongterminvestmentsIncomeStatementDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#LongterminvestmentsIncomeStatementDetails"/>
  <link:calculationLink xlink:role="http://www.westport.com/role/LongterminvestmentsIncomeStatementDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_79b28016-cbba-43d2-9f5b-a66701fd34fe" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetIncomeLoss"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_e5daa31d-4195-46f3-90d7-3f61cf01ac7b" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetIncomeLoss_79b28016-cbba-43d2-9f5b-a66701fd34fe" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_e5daa31d-4195-46f3-90d7-3f61cf01ac7b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_21b5ca5c-2132-4ea4-b37e-990a5ca6aa12" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetIncomeLoss_79b28016-cbba-43d2-9f5b-a66701fd34fe" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_21b5ca5c-2132-4ea4-b37e-990a5ca6aa12" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit_898f91a3-14b4-4894-a16e-ee8202261b2d" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_GrossProfit"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_fe9e8934-abd1-4665-be55-49c55da70c36" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_GrossProfit_898f91a3-14b4-4894-a16e-ee8202261b2d" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_fe9e8934-abd1-4665-be55-49c55da70c36" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfRevenue_79431ad6-105a-4c9b-925a-6d31466caf77" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CostOfRevenue"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_GrossProfit_898f91a3-14b4-4894-a16e-ee8202261b2d" xlink:to="loc_us-gaap_CostOfRevenue_79431ad6-105a-4c9b-925a-6d31466caf77" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.westport.com/role/PropertyplantandequipmentDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#PropertyplantandequipmentDetails"/>
  <link:calculationLink xlink:role="http://www.westport.com/role/PropertyplantandequipmentDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_3853897f-3616-4e9c-95ad-7eaedfd7d963" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentGross_2dc29dda-564a-4201-9510-9b3b92ae804b" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PropertyPlantAndEquipmentGross"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentNet_3853897f-3616-4e9c-95ad-7eaedfd7d963" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentGross_2dc29dda-564a-4201-9510-9b3b92ae804b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_3bfeabea-b367-4427-b187-14ffa0153ac3" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentNet_3853897f-3616-4e9c-95ad-7eaedfd7d963" xlink:to="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_3bfeabea-b367-4427-b187-14ffa0153ac3" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.westport.com/role/AccountspayableandaccruedliabilitiesDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#AccountspayableandaccruedliabilitiesDetails"/>
  <link:calculationLink xlink:role="http://www.westport.com/role/AccountspayableandaccruedliabilitiesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent_f7c14b99-d823-4e35-9ff7-39a09ccda7e7" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableTradeCurrent_78bcfa4f-5659-4de7-b010-7fb3312b46e6" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountsPayableTradeCurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent_f7c14b99-d823-4e35-9ff7-39a09ccda7e7" xlink:to="loc_us-gaap_AccountsPayableTradeCurrent_78bcfa4f-5659-4de7-b010-7fb3312b46e6" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent_e0880006-3d12-4109-809e-74dd990e0d09" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent_f7c14b99-d823-4e35-9ff7-39a09ccda7e7" xlink:to="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent_e0880006-3d12-4109-809e-74dd990e0d09" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedIncomeTaxesCurrent_79bf4665-1b84-4536-8750-0e897eec384c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccruedIncomeTaxesCurrent"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent_f7c14b99-d823-4e35-9ff7-39a09ccda7e7" xlink:to="loc_us-gaap_AccruedIncomeTaxesCurrent_79bf4665-1b84-4536-8750-0e897eec384c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerLiabilityCurrent_2d9f64b9-95ee-4f45-a3df-a23047ed8304" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ContractWithCustomerLiabilityCurrent"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent_f7c14b99-d823-4e35-9ff7-39a09ccda7e7" xlink:to="loc_us-gaap_ContractWithCustomerLiabilityCurrent_2d9f64b9-95ee-4f45-a3df-a23047ed8304" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNotesPayableCurrent_ca27f919-37a2-4102-8d06-4ed594e57a8f" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherNotesPayableCurrent"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent_f7c14b99-d823-4e35-9ff7-39a09ccda7e7" xlink:to="loc_us-gaap_OtherNotesPayableCurrent_ca27f919-37a2-4102-8d06-4ed594e57a8f" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesComponentsofLeaseCostDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#OperatingleasesrightofuseassetsandleaseliabilitiesComponentsofLeaseCostDetails"/>
  <link:calculationLink xlink:role="http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesComponentsofLeaseCostDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseCost_837b6d89-faaf-40c5-bb5e-7156663bf10b" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LeaseCost"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseRightOfUseAssetAmortization_3dbc70d8-eb25-48f7-a48b-5a761ef9cfc0" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_FinanceLeaseRightOfUseAssetAmortization"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LeaseCost_837b6d89-faaf-40c5-bb5e-7156663bf10b" xlink:to="loc_us-gaap_FinanceLeaseRightOfUseAssetAmortization_3dbc70d8-eb25-48f7-a48b-5a761ef9cfc0" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseInterestExpense_38f1a69c-9fee-4b8c-8eee-dcd918c80195" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_FinanceLeaseInterestExpense"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LeaseCost_837b6d89-faaf-40c5-bb5e-7156663bf10b" xlink:to="loc_us-gaap_FinanceLeaseInterestExpense_38f1a69c-9fee-4b8c-8eee-dcd918c80195" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesMaturitiesofLeaseLiabilitiesDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#OperatingleasesrightofuseassetsandleaseliabilitiesMaturitiesofLeaseLiabilitiesDetails"/>
  <link:calculationLink xlink:role="http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesMaturitiesofLeaseLiabilitiesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_ce5b0794-13eb-4fc9-8efc-9dc1713fbfbb" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_73a20358-2690-4d51-9427-8f0e2e22994f" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_ce5b0794-13eb-4fc9-8efc-9dc1713fbfbb" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_73a20358-2690-4d51-9427-8f0e2e22994f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_6bcfea54-8763-4dd4-983a-56e00d555fdd" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_ce5b0794-13eb-4fc9-8efc-9dc1713fbfbb" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_6bcfea54-8763-4dd4-983a-56e00d555fdd" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_037ba22f-ca54-4351-a08a-378234a24e0f" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_ce5b0794-13eb-4fc9-8efc-9dc1713fbfbb" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_037ba22f-ca54-4351-a08a-378234a24e0f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_201ebb7a-7aff-49e9-b1cb-7a8a87f88fd7" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_ce5b0794-13eb-4fc9-8efc-9dc1713fbfbb" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_201ebb7a-7aff-49e9-b1cb-7a8a87f88fd7" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_310a57d4-cd1b-4cdf-8866-74f71040c26e" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_ce5b0794-13eb-4fc9-8efc-9dc1713fbfbb" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_310a57d4-cd1b-4cdf-8866-74f71040c26e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour_8f571f0a-0a59-4850-a9ee-9620bc0fd4a2" xlink:href="wprt-20250630.xsd#wprt_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_ce5b0794-13eb-4fc9-8efc-9dc1713fbfbb" xlink:to="loc_wprt_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour_8f571f0a-0a59-4850-a9ee-9620bc0fd4a2" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiability_193cc5bc-263d-461d-9e9a-6b7db87ac6c5" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OperatingLeaseLiability"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_e4c66387-35ad-4f4b-9536-b6f6108064ed" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingLeaseLiability_193cc5bc-263d-461d-9e9a-6b7db87ac6c5" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_e4c66387-35ad-4f4b-9536-b6f6108064ed" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_b23fca86-950b-47e7-ac94-27a3515f38d5" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.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_OperatingLeaseLiability_193cc5bc-263d-461d-9e9a-6b7db87ac6c5" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_b23fca86-950b-47e7-ac94-27a3515f38d5" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.westport.com/role/LongtermdebtTermLoanFacilitiesDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#LongtermdebtTermLoanFacilitiesDetails"/>
  <link:calculationLink xlink:role="http://www.westport.com/role/LongtermdebtTermLoanFacilitiesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtAndCapitalLeaseObligations_2833213e-0e8d-4c55-8afe-38956aeb1b64" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtAndCapitalLeaseObligations"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent_6ec3da06-e1eb-447f-b8a9-11c120891590" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DebtAndCapitalLeaseObligations_2833213e-0e8d-4c55-8afe-38956aeb1b64" xlink:to="loc_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent_6ec3da06-e1eb-447f-b8a9-11c120891590" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtAndCapitalLeaseObligations_0c60490c-6b4c-4356-873d-67d1708caeda" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligations"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DebtAndCapitalLeaseObligations_2833213e-0e8d-4c55-8afe-38956aeb1b64" xlink:to="loc_us-gaap_LongTermDebtAndCapitalLeaseObligations_0c60490c-6b4c-4356-873d-67d1708caeda" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.westport.com/role/LongtermdebtScheduleofMaturitiesonSeniorFinancingDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#LongtermdebtScheduleofMaturitiesonSeniorFinancingDetails"/>
  <link:calculationLink xlink:role="http://www.westport.com/role/LongtermdebtScheduleofMaturitiesonSeniorFinancingDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentCarryingAmount_cbf294a0-69bd-406b-a7f8-0cfc1c344309" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtInstrumentCarryingAmount"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear_fe58ba9e-17b3-42f2-a2e8-f7fc5a650a82" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DebtInstrumentCarryingAmount_cbf294a0-69bd-406b-a7f8-0cfc1c344309" xlink:to="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear_fe58ba9e-17b3-42f2-a2e8-f7fc5a650a82" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_d8a0998a-9f65-4e98-b18a-47329912903f" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DebtInstrumentCarryingAmount_cbf294a0-69bd-406b-a7f8-0cfc1c344309" xlink:to="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_d8a0998a-9f65-4e98-b18a-47329912903f" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.westport.com/role/SegmentinformationFinancialinformationbybusinesssegmentDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#SegmentinformationFinancialinformationbybusinesssegmentDetails"/>
  <link:calculationLink xlink:role="http://www.westport.com/role/SegmentinformationFinancialinformationbybusinesssegmentDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingExpenses_c9af2e3e-975a-425c-b31b-20d292fc2538" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OperatingExpenses"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpense_b8cb68c9-8833-4879-8b4d-498d1d366d54" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.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_c9af2e3e-975a-425c-b31b-20d292fc2538" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpense_b8cb68c9-8833-4879-8b4d-498d1d366d54" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpense_cef5ab95-30dc-48d3-9789-05429d6b7a7a" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_GeneralAndAdministrativeExpense"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingExpenses_c9af2e3e-975a-425c-b31b-20d292fc2538" xlink:to="loc_us-gaap_GeneralAndAdministrativeExpense_cef5ab95-30dc-48d3-9789-05429d6b7a7a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingAndMarketingExpense_9a4a0672-ed07-49e8-a188-f0f0491bbb51" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SellingAndMarketingExpense"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingExpenses_c9af2e3e-975a-425c-b31b-20d292fc2538" xlink:to="loc_us-gaap_SellingAndMarketingExpense_9a4a0672-ed07-49e8-a188-f0f0491bbb51" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DepreciationAmortizationAndAccretionNet_7a69d181-2b1c-4f10-8e23-6777b66f9173" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DepreciationAmortizationAndAccretionNet"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingExpenses_c9af2e3e-975a-425c-b31b-20d292fc2538" xlink:to="loc_us-gaap_DepreciationAmortizationAndAccretionNet_7a69d181-2b1c-4f10-8e23-6777b66f9173" xlink:type="arc"/>
  </link:calculationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.DEF
<SEQUENCE>5
<FILENAME>wprt-20250630_def.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION DEFINITION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with the Workiva Platform-->
<!--Copyright 2025 Workiva-->
<!--r:ad297659-f296-4abb-b3c8-4f222db3fa0c,g:5bd34070-f794-402d-a468-34e565af0565-->
<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.westport.com/role/CondensedConsolidatedInterimStatementsofShareholdersEquityunaudited" xlink:type="simple" xlink:href="wprt-20250630.xsd#CondensedConsolidatedInterimStatementsofShareholdersEquityunaudited"/>
  <link:definitionLink xlink:role="http://www.westport.com/role/CondensedConsolidatedInterimStatementsofShareholdersEquityunaudited" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementLineItems_02ac9dab-5fdc-445c-ba7d-efeb166e0e09" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StatementLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementTable_826fe883-749a-4d0a-9dee-060c3e6e2b70" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StatementTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_02ac9dab-5fdc-445c-ba7d-efeb166e0e09" xlink:to="loc_us-gaap_StatementTable_826fe883-749a-4d0a-9dee-060c3e6e2b70" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_79e6b313-8e6b-4bd6-bea7-0f2db04cfc1e" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_826fe883-749a-4d0a-9dee-060c3e6e2b70" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_79e6b313-8e6b-4bd6-bea7-0f2db04cfc1e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_79e6b313-8e6b-4bd6-bea7-0f2db04cfc1e_default" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EquityComponentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_79e6b313-8e6b-4bd6-bea7-0f2db04cfc1e" xlink:to="loc_us-gaap_EquityComponentDomain_79e6b313-8e6b-4bd6-bea7-0f2db04cfc1e_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_2e6ee834-47e0-442b-8b27-03b10a2d88f6" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EquityComponentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_79e6b313-8e6b-4bd6-bea7-0f2db04cfc1e" xlink:to="loc_us-gaap_EquityComponentDomain_2e6ee834-47e0-442b-8b27-03b10a2d88f6" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember_1443384f-b895-4a68-a3a9-8a32cf07c35d" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommonStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_2e6ee834-47e0-442b-8b27-03b10a2d88f6" xlink:to="loc_us-gaap_CommonStockMember_1443384f-b895-4a68-a3a9-8a32cf07c35d" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_EquitySecuritiesOtherOneMember_769e61cf-584b-4a43-9ade-3107f98b1165" xlink:href="wprt-20250630.xsd#wprt_EquitySecuritiesOtherOneMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_2e6ee834-47e0-442b-8b27-03b10a2d88f6" xlink:to="loc_wprt_EquitySecuritiesOtherOneMember_769e61cf-584b-4a43-9ade-3107f98b1165" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalMember_ad06a832-d7e5-47ac-8e26-451f5ee5cef6" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AdditionalPaidInCapitalMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_2e6ee834-47e0-442b-8b27-03b10a2d88f6" xlink:to="loc_us-gaap_AdditionalPaidInCapitalMember_ad06a832-d7e5-47ac-8e26-451f5ee5cef6" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsMember_e3139fd2-df19-4911-8320-d362756e1067" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RetainedEarningsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_2e6ee834-47e0-442b-8b27-03b10a2d88f6" xlink:to="loc_us-gaap_RetainedEarningsMember_e3139fd2-df19-4911-8320-d362756e1067" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_f7f0108c-5d91-4e2b-b634-6988ece4295c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_2e6ee834-47e0-442b-8b27-03b10a2d88f6" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_f7f0108c-5d91-4e2b-b634-6988ece4295c" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_85b4ba59-a124-4f53-a5f1-f90bfc822dfa" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInStockholdersEquityRollForward"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_02ac9dab-5fdc-445c-ba7d-efeb166e0e09" xlink:to="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_85b4ba59-a124-4f53-a5f1-f90bfc822dfa" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesOutstanding_0c932704-3092-4f6a-bf43-ad85cdfb5747" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommonStockSharesOutstanding"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_85b4ba59-a124-4f53-a5f1-f90bfc822dfa" xlink:to="loc_us-gaap_CommonStockSharesOutstanding_0c932704-3092-4f6a-bf43-ad85cdfb5747" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_adcea0b9-37d4-4941-88f9-ca48b5ea4174" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StockholdersEquity"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_85b4ba59-a124-4f53-a5f1-f90bfc822dfa" xlink:to="loc_us-gaap_StockholdersEquity_adcea0b9-37d4-4941-88f9-ca48b5ea4174" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_b98a0dfa-939d-4e7a-afba-266d210bb4ac" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_85b4ba59-a124-4f53-a5f1-f90bfc822dfa" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_b98a0dfa-939d-4e7a-afba-266d210bb4ac" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_6bbcd253-1c38-4a96-a6b7-2dda067b9081" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_85b4ba59-a124-4f53-a5f1-f90bfc822dfa" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_6bbcd253-1c38-4a96-a6b7-2dda067b9081" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_e9e5c781-1af0-4d81-9073-9cf09c333d28" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_85b4ba59-a124-4f53-a5f1-f90bfc822dfa" xlink:to="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_e9e5c781-1af0-4d81-9073-9cf09c333d28" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_57086307-7fd8-46cd-a481-15e093b7bdb1" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetIncomeLoss"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_85b4ba59-a124-4f53-a5f1-f90bfc822dfa" xlink:to="loc_us-gaap_NetIncomeLoss_57086307-7fd8-46cd-a481-15e093b7bdb1" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_89604164-a17d-4127-8b90-67f28ee1e632" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_85b4ba59-a124-4f53-a5f1-f90bfc822dfa" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_89604164-a17d-4127-8b90-67f28ee1e632" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesOutstanding_e43652f4-7c35-44e1-8b9a-a06521a4adb5" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommonStockSharesOutstanding"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_b4f9d594-cb68-4811-903a-eab58df99fab" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StockholdersEquity"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.westport.com/role/CompanyorganizationandoperationsDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#CompanyorganizationandoperationsDetails"/>
  <link:definitionLink xlink:role="http://www.westport.com/role/CompanyorganizationandoperationsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEquityMethodInvestmentsLineItems_909433b0-7ccb-4f25-8204-79becc4c66e6" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfEquityMethodInvestmentsLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEquityMethodInvestmentsTable_5a794757-fdf9-464a-a058-bc051bcd46d5" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfEquityMethodInvestmentsTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ScheduleOfEquityMethodInvestmentsLineItems_909433b0-7ccb-4f25-8204-79becc4c66e6" xlink:to="loc_us-gaap_ScheduleOfEquityMethodInvestmentsTable_5a794757-fdf9-464a-a058-bc051bcd46d5" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_01ad437a-8ddb-40c6-a6a3-9377173c158f" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfEquityMethodInvestmentsTable_5a794757-fdf9-464a-a058-bc051bcd46d5" xlink:to="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_01ad437a-8ddb-40c6-a6a3-9377173c158f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_EquityMethodInvesteeNameDomain_01ad437a-8ddb-40c6-a6a3-9377173c158f_default" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_EquityMethodInvesteeNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_01ad437a-8ddb-40c6-a6a3-9377173c158f" xlink:to="loc_srt_EquityMethodInvesteeNameDomain_01ad437a-8ddb-40c6-a6a3-9377173c158f_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_EquityMethodInvesteeNameDomain_ce8b70c8-11a1-4fa0-a12c-33196f18a01b" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_EquityMethodInvesteeNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_01ad437a-8ddb-40c6-a6a3-9377173c158f" xlink:to="loc_srt_EquityMethodInvesteeNameDomain_ce8b70c8-11a1-4fa0-a12c-33196f18a01b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_CespiraJointVentureMember_deada4fb-7f8e-4fb0-bfb2-8b0ece53e947" xlink:href="wprt-20250630.xsd#wprt_CespiraJointVentureMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_EquityMethodInvesteeNameDomain_ce8b70c8-11a1-4fa0-a12c-33196f18a01b" xlink:to="loc_wprt_CespiraJointVentureMember_deada4fb-7f8e-4fb0-bfb2-8b0ece53e947" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityMethodInvestmentOwnershipPercentage_22dd86ca-637f-4a60-90a2-2935cb9bf3c8" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EquityMethodInvestmentOwnershipPercentage"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfEquityMethodInvestmentsLineItems_909433b0-7ccb-4f25-8204-79becc4c66e6" xlink:to="loc_us-gaap_EquityMethodInvestmentOwnershipPercentage_22dd86ca-637f-4a60-90a2-2935cb9bf3c8" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.westport.com/role/LiquidityandGoingConcernDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#LiquidityandGoingConcernDetails"/>
  <link:definitionLink xlink:role="http://www.westport.com/role/LiquidityandGoingConcernDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentLineItems_2bdfa701-3e65-4376-bd17-c768e8304623" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtInstrumentLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTable_e7183b32-b755-458c-a240-285aeac14de4" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtInstrumentTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DebtInstrumentLineItems_2bdfa701-3e65-4376-bd17-c768e8304623" xlink:to="loc_us-gaap_DebtInstrumentTable_e7183b32-b755-458c-a240-285aeac14de4" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeAxis_a9fc394c-58fa-4e06-affc-b4ba16910e06" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SubsequentEventTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_e7183b32-b755-458c-a240-285aeac14de4" xlink:to="loc_us-gaap_SubsequentEventTypeAxis_a9fc394c-58fa-4e06-affc-b4ba16910e06" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_a9fc394c-58fa-4e06-affc-b4ba16910e06_default" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_a9fc394c-58fa-4e06-affc-b4ba16910e06" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_a9fc394c-58fa-4e06-affc-b4ba16910e06_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_4277cf08-ff2f-4d1b-b960-7a6c404ff3f9" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_a9fc394c-58fa-4e06-affc-b4ba16910e06" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_4277cf08-ff2f-4d1b-b960-7a6c404ff3f9" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventMember_f7725084-3913-4489-943f-72a156d1eeba" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SubsequentEventMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventTypeDomain_4277cf08-ff2f-4d1b-b960-7a6c404ff3f9" xlink:to="loc_us-gaap_SubsequentEventMember_f7725084-3913-4489-943f-72a156d1eeba" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationAxis_dbfd89ce-35d7-45ad-b204-efc1fb317c9b" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupClassificationAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_e7183b32-b755-458c-a240-285aeac14de4" xlink:to="loc_us-gaap_DisposalGroupClassificationAxis_dbfd89ce-35d7-45ad-b204-efc1fb317c9b" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationDomain_dbfd89ce-35d7-45ad-b204-efc1fb317c9b_default" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupClassificationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DisposalGroupClassificationAxis_dbfd89ce-35d7-45ad-b204-efc1fb317c9b" xlink:to="loc_us-gaap_DisposalGroupClassificationDomain_dbfd89ce-35d7-45ad-b204-efc1fb317c9b_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationDomain_9a549db5-9e9a-4a8b-8c20-d5967c4a86cb" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupClassificationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DisposalGroupClassificationAxis_dbfd89ce-35d7-45ad-b204-efc1fb317c9b" xlink:to="loc_us-gaap_DisposalGroupClassificationDomain_9a549db5-9e9a-4a8b-8c20-d5967c4a86cb" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationsHeldforsaleMember_f8af58dd-8eac-4109-8e3e-352edf2ab08f" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DiscontinuedOperationsHeldforsaleMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisposalGroupClassificationDomain_9a549db5-9e9a-4a8b-8c20-d5967c4a86cb" xlink:to="loc_us-gaap_DiscontinuedOperationsHeldforsaleMember_f8af58dd-8eac-4109-8e3e-352edf2ab08f" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationsDisposedOfBySaleMember_b355b873-50ad-4c1d-bdb1-1c913afa725e" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DiscontinuedOperationsDisposedOfBySaleMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisposalGroupClassificationDomain_9a549db5-9e9a-4a8b-8c20-d5967c4a86cb" xlink:to="loc_us-gaap_DiscontinuedOperationsDisposedOfBySaleMember_b355b873-50ad-4c1d-bdb1-1c913afa725e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_8ca2dd62-9df5-4591-be0c-f4e758dddcd8" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_e7183b32-b755-458c-a240-285aeac14de4" xlink:to="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_8ca2dd62-9df5-4591-be0c-f4e758dddcd8" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_8ca2dd62-9df5-4591-be0c-f4e758dddcd8_default" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_8ca2dd62-9df5-4591-be0c-f4e758dddcd8" xlink:to="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_8ca2dd62-9df5-4591-be0c-f4e758dddcd8_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_bf9bc674-f7ba-447d-965d-5740163404fe" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_8ca2dd62-9df5-4591-be0c-f4e758dddcd8" xlink:to="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_bf9bc674-f7ba-447d-965d-5740163404fe" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_LightDutyMember_cd3d11c3-909a-4276-ae34-9188127a8c57" xlink:href="wprt-20250630.xsd#wprt_LightDutyMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_bf9bc674-f7ba-447d-965d-5740163404fe" xlink:to="loc_wprt_LightDutyMember_cd3d11c3-909a-4276-ae34-9188127a8c57" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_6103fc48-0ee7-4f45-907a-8a0db056bf6d" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_2bdfa701-3e65-4376-bd17-c768e8304623" xlink:to="loc_us-gaap_OperatingIncomeLoss_6103fc48-0ee7-4f45-907a-8a0db056bf6d" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_16a85c4d-1be0-4587-b6d8-caf3eb5719aa" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_2bdfa701-3e65-4376-bd17-c768e8304623" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_16a85c4d-1be0-4587-b6d8-caf3eb5719aa" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents_8a69fa5d-988a-4498-9527-ff5a9164036f" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_2bdfa701-3e65-4376-bd17-c768e8304623" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents_8a69fa5d-988a-4498-9527-ff5a9164036f" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtLongtermAndShorttermCombinedAmount_1599fd5a-0330-4935-b3a6-4a85edf6eac5" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtLongtermAndShorttermCombinedAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_2bdfa701-3e65-4376-bd17-c768e8304623" xlink:to="loc_us-gaap_DebtLongtermAndShorttermCombinedAmount_1599fd5a-0330-4935-b3a6-4a85edf6eac5" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent_b78edf10-b52d-47d9-ac6c-69dfb3576b9f" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_2bdfa701-3e65-4376-bd17-c768e8304623" xlink:to="loc_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent_b78edf10-b52d-47d9-ac6c-69dfb3576b9f" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DebtInstrumentCovenantMinimumCashRequirement_e9f0aea7-75a2-417b-87a2-12d9726e3b71" xlink:href="wprt-20250630.xsd#wprt_DebtInstrumentCovenantMinimumCashRequirement"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_2bdfa701-3e65-4376-bd17-c768e8304623" xlink:to="loc_wprt_DebtInstrumentCovenantMinimumCashRequirement_e9f0aea7-75a2-417b-87a2-12d9726e3b71" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesTreasuryStockReissued_cab61c91-a547-4bcc-8a9f-a1380854f740" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StockIssuedDuringPeriodSharesTreasuryStockReissued"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_2bdfa701-3e65-4376-bd17-c768e8304623" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesTreasuryStockReissued_cab61c91-a547-4bcc-8a9f-a1380854f740" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration_653c8edd-dff0-4d78-b586-46c4cbcb69c5" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_2bdfa701-3e65-4376-bd17-c768e8304623" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration_653c8edd-dff0-4d78-b586-46c4cbcb69c5" xlink:type="arc" order="7"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.westport.com/role/BasisofpreparationDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#BasisofpreparationDetails"/>
  <link:definitionLink xlink:role="http://www.westport.com/role/BasisofpreparationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ScheduleOfForeignCurrencyLineItems_a1dcbee3-7700-4246-b259-399ab7070f1b" xlink:href="wprt-20250630.xsd#wprt_ScheduleOfForeignCurrencyLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ScheduleOfForeignCurrencyTable_0b9b91bd-f33e-4cdd-b696-4d5c3e6c80ee" xlink:href="wprt-20250630.xsd#wprt_ScheduleOfForeignCurrencyTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_wprt_ScheduleOfForeignCurrencyLineItems_a1dcbee3-7700-4246-b259-399ab7070f1b" xlink:to="loc_wprt_ScheduleOfForeignCurrencyTable_0b9b91bd-f33e-4cdd-b696-4d5c3e6c80ee" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CurrencyAxis_60321c36-dde5-4985-a572-53ca8b313c36" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_CurrencyAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_wprt_ScheduleOfForeignCurrencyTable_0b9b91bd-f33e-4cdd-b696-4d5c3e6c80ee" xlink:to="loc_srt_CurrencyAxis_60321c36-dde5-4985-a572-53ca8b313c36" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_AllCurrenciesDomain_60321c36-dde5-4985-a572-53ca8b313c36_default" xlink:href="https://xbrl.sec.gov/currency/2025/currency-2025.xsd#currency_AllCurrenciesDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_CurrencyAxis_60321c36-dde5-4985-a572-53ca8b313c36" xlink:to="loc_currency_AllCurrenciesDomain_60321c36-dde5-4985-a572-53ca8b313c36_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_AllCurrenciesDomain_f6f6c51a-a610-4a2b-b512-d37e61096da7" xlink:href="https://xbrl.sec.gov/currency/2025/currency-2025.xsd#currency_AllCurrenciesDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_CurrencyAxis_60321c36-dde5-4985-a572-53ca8b313c36" xlink:to="loc_currency_AllCurrenciesDomain_f6f6c51a-a610-4a2b-b512-d37e61096da7" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_CAD_46bf75b9-217d-422a-9194-72962c51f1f7" xlink:href="https://xbrl.sec.gov/currency/2025/currency-2025.xsd#currency_CAD"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_currency_AllCurrenciesDomain_f6f6c51a-a610-4a2b-b512-d37e61096da7" xlink:to="loc_currency_CAD_46bf75b9-217d-422a-9194-72962c51f1f7" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_EUR_df5a3b64-7c08-414a-85c4-f64c8700e9a1" xlink:href="https://xbrl.sec.gov/currency/2025/currency-2025.xsd#currency_EUR"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_currency_AllCurrenciesDomain_f6f6c51a-a610-4a2b-b512-d37e61096da7" xlink:to="loc_currency_EUR_df5a3b64-7c08-414a-85c4-f64c8700e9a1" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_CNY_bead16eb-ed53-4864-8e79-8053893b5659" xlink:href="https://xbrl.sec.gov/currency/2025/currency-2025.xsd#currency_CNY"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_currency_AllCurrenciesDomain_f6f6c51a-a610-4a2b-b512-d37e61096da7" xlink:to="loc_currency_CNY_bead16eb-ed53-4864-8e79-8053893b5659" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_PLN_4e2a766a-57a7-49c8-b367-8502d8dbe983" xlink:href="https://xbrl.sec.gov/currency/2025/currency-2025.xsd#currency_PLN"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_currency_AllCurrenciesDomain_f6f6c51a-a610-4a2b-b512-d37e61096da7" xlink:to="loc_currency_PLN_4e2a766a-57a7-49c8-b367-8502d8dbe983" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_SEK_7679a347-854c-412b-8c4e-ed1ad36a02c8" xlink:href="https://xbrl.sec.gov/currency/2025/currency-2025.xsd#currency_SEK"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_currency_AllCurrenciesDomain_f6f6c51a-a610-4a2b-b512-d37e61096da7" xlink:to="loc_currency_SEK_7679a347-854c-412b-8c4e-ed1ad36a02c8" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_INR_f8fde980-ed8a-43ad-9690-c7e4c67f2b87" xlink:href="https://xbrl.sec.gov/currency/2025/currency-2025.xsd#currency_INR"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_currency_AllCurrenciesDomain_f6f6c51a-a610-4a2b-b512-d37e61096da7" xlink:to="loc_currency_INR_f8fde980-ed8a-43ad-9690-c7e4c67f2b87" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_ARS_398a2112-d879-4b41-84ff-4ee3d0060c1e" xlink:href="https://xbrl.sec.gov/currency/2025/currency-2025.xsd#currency_ARS"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_currency_AllCurrenciesDomain_f6f6c51a-a610-4a2b-b512-d37e61096da7" xlink:to="loc_currency_ARS_398a2112-d879-4b41-84ff-4ee3d0060c1e" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignCurrencyExchangeRateTranslation1_8ef759c7-512a-4fe5-807f-f3dc11034de0" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ForeignCurrencyExchangeRateTranslation1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_wprt_ScheduleOfForeignCurrencyLineItems_a1dcbee3-7700-4246-b259-399ab7070f1b" xlink:to="loc_us-gaap_ForeignCurrencyExchangeRateTranslation1_8ef759c7-512a-4fe5-807f-f3dc11034de0" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_AverageForeignCurrencyExchangeRateTranslation1_9b5e8c77-b308-4b72-9b9c-34c49655c6ba" xlink:href="wprt-20250630.xsd#wprt_AverageForeignCurrencyExchangeRateTranslation1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_wprt_ScheduleOfForeignCurrencyLineItems_a1dcbee3-7700-4246-b259-399ab7070f1b" xlink:to="loc_wprt_AverageForeignCurrencyExchangeRateTranslation1_9b5e8c77-b308-4b72-9b9c-34c49655c6ba" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsNarrativeDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#HeldforsaledisposalgroupanddiscontinuedoperationsNarrativeDetails"/>
  <link:definitionLink xlink:role="http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsNarrativeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_6d4048da-e05b-4d2c-8594-1943dcfc7443" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_d149c6e9-f24e-4669-a4b3-27103905aca8" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_6d4048da-e05b-4d2c-8594-1943dcfc7443" xlink:to="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_d149c6e9-f24e-4669-a4b3-27103905aca8" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationAxis_5134b3de-e153-4eb4-8e06-1762d6bda9b2" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupClassificationAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_d149c6e9-f24e-4669-a4b3-27103905aca8" xlink:to="loc_us-gaap_DisposalGroupClassificationAxis_5134b3de-e153-4eb4-8e06-1762d6bda9b2" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationDomain_5134b3de-e153-4eb4-8e06-1762d6bda9b2_default" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupClassificationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DisposalGroupClassificationAxis_5134b3de-e153-4eb4-8e06-1762d6bda9b2" xlink:to="loc_us-gaap_DisposalGroupClassificationDomain_5134b3de-e153-4eb4-8e06-1762d6bda9b2_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationDomain_e272441b-c443-4f6e-8ec5-6d42b90b0fb0" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupClassificationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DisposalGroupClassificationAxis_5134b3de-e153-4eb4-8e06-1762d6bda9b2" xlink:to="loc_us-gaap_DisposalGroupClassificationDomain_e272441b-c443-4f6e-8ec5-6d42b90b0fb0" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationsHeldforsaleMember_410ecd19-c779-4ed6-a6d3-92f0f5f4dfa6" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DiscontinuedOperationsHeldforsaleMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisposalGroupClassificationDomain_e272441b-c443-4f6e-8ec5-6d42b90b0fb0" xlink:to="loc_us-gaap_DiscontinuedOperationsHeldforsaleMember_410ecd19-c779-4ed6-a6d3-92f0f5f4dfa6" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationsDisposedOfBySaleMember_ab2b2d22-668c-486b-978a-7bcda2d707f0" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DiscontinuedOperationsDisposedOfBySaleMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisposalGroupClassificationDomain_e272441b-c443-4f6e-8ec5-6d42b90b0fb0" xlink:to="loc_us-gaap_DiscontinuedOperationsDisposedOfBySaleMember_ab2b2d22-668c-486b-978a-7bcda2d707f0" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_011c90bc-7306-4cd5-8a9c-d8ad8b0f6cdb" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_d149c6e9-f24e-4669-a4b3-27103905aca8" xlink:to="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_011c90bc-7306-4cd5-8a9c-d8ad8b0f6cdb" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_011c90bc-7306-4cd5-8a9c-d8ad8b0f6cdb_default" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_011c90bc-7306-4cd5-8a9c-d8ad8b0f6cdb" xlink:to="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_011c90bc-7306-4cd5-8a9c-d8ad8b0f6cdb_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_5b533083-f86b-4596-bf88-ce6f7aa05f32" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_011c90bc-7306-4cd5-8a9c-d8ad8b0f6cdb" xlink:to="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_5b533083-f86b-4596-bf88-ce6f7aa05f32" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_LightDutyMember_ebe19115-00ad-462a-abb7-e2a8338e3a78" xlink:href="wprt-20250630.xsd#wprt_LightDutyMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_5b533083-f86b-4596-bf88-ce6f7aa05f32" xlink:to="loc_wprt_LightDutyMember_ebe19115-00ad-462a-abb7-e2a8338e3a78" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeAxis_863898ad-0b7f-455a-b2b9-171133c4fb2c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SubsequentEventTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_d149c6e9-f24e-4669-a4b3-27103905aca8" xlink:to="loc_us-gaap_SubsequentEventTypeAxis_863898ad-0b7f-455a-b2b9-171133c4fb2c" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_863898ad-0b7f-455a-b2b9-171133c4fb2c_default" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_863898ad-0b7f-455a-b2b9-171133c4fb2c" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_863898ad-0b7f-455a-b2b9-171133c4fb2c_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_d5f57fcb-710e-43e4-8036-d9b464eed0e0" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_863898ad-0b7f-455a-b2b9-171133c4fb2c" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_d5f57fcb-710e-43e4-8036-d9b464eed0e0" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventMember_8c321c9b-613f-4692-8a10-ce6c205a0118" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SubsequentEventMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventTypeDomain_d5f57fcb-710e-43e4-8036-d9b464eed0e0" xlink:to="loc_us-gaap_SubsequentEventMember_8c321c9b-613f-4692-8a10-ce6c205a0118" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermDebtTypeAxis_abc0fa20-306a-4356-bec2-027555531045" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShortTermDebtTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_d149c6e9-f24e-4669-a4b3-27103905aca8" xlink:to="loc_us-gaap_ShortTermDebtTypeAxis_abc0fa20-306a-4356-bec2-027555531045" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermDebtTypeDomain_abc0fa20-306a-4356-bec2-027555531045_default" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShortTermDebtTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ShortTermDebtTypeAxis_abc0fa20-306a-4356-bec2-027555531045" xlink:to="loc_us-gaap_ShortTermDebtTypeDomain_abc0fa20-306a-4356-bec2-027555531045_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermDebtTypeDomain_187053c5-b1e0-4fb5-be76-7b9ffdf57230" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShortTermDebtTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ShortTermDebtTypeAxis_abc0fa20-306a-4356-bec2-027555531045" xlink:to="loc_us-gaap_ShortTermDebtTypeDomain_187053c5-b1e0-4fb5-be76-7b9ffdf57230" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LoansPayableMember_d95fc0fb-0953-4de9-91e4-cb63fdbc5968" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LoansPayableMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShortTermDebtTypeDomain_187053c5-b1e0-4fb5-be76-7b9ffdf57230" xlink:to="loc_us-gaap_LoansPayableMember_d95fc0fb-0953-4de9-91e4-cb63fdbc5968" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_StatementScenarioAxis_7b825fe5-0788-444f-80c7-7877cbc9e5b5" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_StatementScenarioAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_d149c6e9-f24e-4669-a4b3-27103905aca8" xlink:to="loc_srt_StatementScenarioAxis_7b825fe5-0788-444f-80c7-7877cbc9e5b5" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScenarioUnspecifiedDomain_7b825fe5-0788-444f-80c7-7877cbc9e5b5_default" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ScenarioUnspecifiedDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_StatementScenarioAxis_7b825fe5-0788-444f-80c7-7877cbc9e5b5" xlink:to="loc_srt_ScenarioUnspecifiedDomain_7b825fe5-0788-444f-80c7-7877cbc9e5b5_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScenarioUnspecifiedDomain_b63afa30-197d-463c-be28-bd2a5f55bace" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ScenarioUnspecifiedDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_StatementScenarioAxis_7b825fe5-0788-444f-80c7-7877cbc9e5b5" xlink:to="loc_srt_ScenarioUnspecifiedDomain_b63afa30-197d-463c-be28-bd2a5f55bace" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScenarioForecastMember_6f3ee8c2-1d5e-4dfc-9834-eb73d08c48ed" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ScenarioForecastMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ScenarioUnspecifiedDomain_b63afa30-197d-463c-be28-bd2a5f55bace" xlink:to="loc_srt_ScenarioForecastMember_6f3ee8c2-1d5e-4dfc-9834-eb73d08c48ed" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax_c9bfe39a-a78e-42ce-bf06-9e17ec9dde20" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_6d4048da-e05b-4d2c-8594-1943dcfc7443" xlink:to="loc_us-gaap_DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax_c9bfe39a-a78e-42ce-bf06-9e17ec9dde20" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationAdditionsToLongLivedAssets_af0e015c-e9fd-4522-8d00-5d2814da3c96" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationAdditionsToLongLivedAssets"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_6d4048da-e05b-4d2c-8594-1943dcfc7443" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationAdditionsToLongLivedAssets_af0e015c-e9fd-4522-8d00-5d2814da3c96" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentFaceAmount_78f1faaa-b54a-44f5-8301-9c33db4eb6ea" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtInstrumentFaceAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_6d4048da-e05b-4d2c-8594-1943dcfc7443" xlink:to="loc_us-gaap_DebtInstrumentFaceAmount_78f1faaa-b54a-44f5-8301-9c33db4eb6ea" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration_a8a16ef1-601f-4213-97a2-ecfee8529902" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_6d4048da-e05b-4d2c-8594-1943dcfc7443" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration_a8a16ef1-601f-4213-97a2-ecfee8529902" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromDivestitureOfBusinesses_5c3395d4-9d8a-4342-bb92-a6f82e11260f" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ProceedsFromDivestitureOfBusinesses"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_6d4048da-e05b-4d2c-8594-1943dcfc7443" xlink:to="loc_us-gaap_ProceedsFromDivestitureOfBusinesses_5c3395d4-9d8a-4342-bb92-a6f82e11260f" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrow_90ea0abd-63aa-40c7-b160-308b85ce02ee" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrow"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_6d4048da-e05b-4d2c-8594-1943dcfc7443" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrow_90ea0abd-63aa-40c7-b160-308b85ce02ee" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationEarnoutsMaximum_b9adf9ad-ddd4-4cd3-a66a-f9681cc785ef" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationEarnoutsMaximum"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_6d4048da-e05b-4d2c-8594-1943dcfc7443" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationEarnoutsMaximum_b9adf9ad-ddd4-4cd3-a66a-f9681cc785ef" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrowNumberOfTranches_7e4fa01a-034a-439e-aad3-c113c1fd7aec" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrowNumberOfTranches"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_6d4048da-e05b-4d2c-8594-1943dcfc7443" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrowNumberOfTranches_7e4fa01a-034a-439e-aad3-c113c1fd7aec" xlink:type="arc" order="7"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails"/>
  <link:definitionLink xlink:role="http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_51a99660-f3bc-48c5-af47-7ea3eb450d1f" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_51a99660-f3bc-48c5-af47-7ea3eb450d1f" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_4ca976de-2e9f-430f-a811-892837a037a9" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_51a99660-f3bc-48c5-af47-7ea3eb450d1f" xlink:to="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_4ca976de-2e9f-430f-a811-892837a037a9" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_4ca976de-2e9f-430f-a811-892837a037a9_default" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_4ca976de-2e9f-430f-a811-892837a037a9" xlink:to="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_4ca976de-2e9f-430f-a811-892837a037a9_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_6cd028fb-3245-40ee-820d-5238112ec034" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_4ca976de-2e9f-430f-a811-892837a037a9" xlink:to="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_6cd028fb-3245-40ee-820d-5238112ec034" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_LightDutyMember_4ea90d4d-ac83-402b-b2ab-447a3a100fc4" xlink:href="wprt-20250630.xsd#wprt_LightDutyMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_6cd028fb-3245-40ee-820d-5238112ec034" xlink:to="loc_wprt_LightDutyMember_4ea90d4d-ac83-402b-b2ab-447a3a100fc4" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationAxis_925841a4-4ba9-4ba8-a3a3-784b146e8110" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupClassificationAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_51a99660-f3bc-48c5-af47-7ea3eb450d1f" xlink:to="loc_us-gaap_DisposalGroupClassificationAxis_925841a4-4ba9-4ba8-a3a3-784b146e8110" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationDomain_925841a4-4ba9-4ba8-a3a3-784b146e8110_default" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupClassificationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DisposalGroupClassificationAxis_925841a4-4ba9-4ba8-a3a3-784b146e8110" xlink:to="loc_us-gaap_DisposalGroupClassificationDomain_925841a4-4ba9-4ba8-a3a3-784b146e8110_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationDomain_b7783b12-e4a6-4556-9525-0ec907e96ee8" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupClassificationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DisposalGroupClassificationAxis_925841a4-4ba9-4ba8-a3a3-784b146e8110" xlink:to="loc_us-gaap_DisposalGroupClassificationDomain_b7783b12-e4a6-4556-9525-0ec907e96ee8" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationsHeldforsaleMember_0d986609-b18e-4755-a01e-5b2bc71c2aba" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DiscontinuedOperationsHeldforsaleMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisposalGroupClassificationDomain_b7783b12-e4a6-4556-9525-0ec907e96ee8" xlink:to="loc_us-gaap_DiscontinuedOperationsHeldforsaleMember_0d986609-b18e-4755-a01e-5b2bc71c2aba" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents_5b30da79-2459-4421-87fa-c22f383b0884" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents_5b30da79-2459-4421-87fa-c22f383b0884" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet_2e535e61-853b-4dc7-83ad-eec0a8958738" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet_2e535e61-853b-4dc7-83ad-eec0a8958738" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationInventoryCurrent_84f6c2af-bc18-417a-9def-74468db5ae20" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationInventoryCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationInventoryCurrent_84f6c2af-bc18-417a-9def-74468db5ae20" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent_70afaaed-5e2b-4666-8fe4-d81234abd304" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent_70afaaed-5e2b-4666-8fe4-d81234abd304" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent_42826e30-772e-4422-bfae-be2d92b19237" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent_42826e30-772e-4422-bfae-be2d92b19237" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationInvestmentsNoncurrent_01a0881f-248a-43f0-b215-617b0bb6ba1c" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationInvestmentsNoncurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationInvestmentsNoncurrent_01a0881f-248a-43f0-b215-617b0bb6ba1c" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent_ffe92e90-d4d0-497b-a5e1-cebc239a614c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent_ffe92e90-d4d0-497b-a5e1-cebc239a614c" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAssetNoncurrent_87d5eb31-b689-4b53-8707-aa5f44d19368" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAssetNoncurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAssetNoncurrent_87d5eb31-b689-4b53-8707-aa5f44d19368" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent_c3b0067c-396a-4b10-99f7-c4d3505ac93c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent_c3b0067c-396a-4b10-99f7-c4d3505ac93c" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationDeferredTaxAssets_ea6c0dfe-9464-402c-8894-854c59cfc4ba" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationDeferredTaxAssets"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationDeferredTaxAssets_ea6c0dfe-9464-402c-8894-854c59cfc4ba" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationGoodwillNoncurrent_51a95ed3-c3a4-4e9e-9c9a-809cb4f8cae2" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationGoodwillNoncurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationGoodwillNoncurrent_51a95ed3-c3a4-4e9e-9c9a-809cb4f8cae2" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets_7726c5ac-65e4-42c2-b3d8-0b40a14f768b" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets_7726c5ac-65e4-42c2-b3d8-0b40a14f768b" xlink:type="arc" order="11"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent_24e59dae-c26a-4942-81fd-1ad2f336cfba" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent_24e59dae-c26a-4942-81fd-1ad2f336cfba" xlink:type="arc" order="12"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationValuationAllowance_1f412936-d824-47b9-94ea-ac8af78d27a2" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationValuationAllowance"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationValuationAllowance_1f412936-d824-47b9-94ea-ac8af78d27a2" xlink:type="arc" order="13"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation_7a6bb549-aafd-48a3-9b38-105030d4c0d4" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation_7a6bb549-aafd-48a3-9b38-105030d4c0d4" xlink:type="arc" order="14"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsPayableAndAccruedLiabilitiesCurrent_15036cf5-9553-4448-8020-02747e19fca1" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsPayableAndAccruedLiabilitiesCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsPayableAndAccruedLiabilitiesCurrent_15036cf5-9553-4448-8020-02747e19fca1" xlink:type="arc" order="15"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityCurrent_4b77681e-f3e8-47c9-a098-b2f9cda9eced" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityCurrent_4b77681e-f3e8-47c9-a098-b2f9cda9eced" xlink:type="arc" order="16"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationLongTermDebtCurrent_4af2f947-891a-4cb3-8454-2b904d53ac8d" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationLongTermDebtCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationLongTermDebtCurrent_4af2f947-891a-4cb3-8454-2b904d53ac8d" xlink:type="arc" order="17"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualCurrent_a938486c-84ac-4a4f-813a-10172a26eb46" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualCurrent_a938486c-84ac-4a4f-813a-10172a26eb46" xlink:type="arc" order="18"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent_427377c0-bdee-4817-a7bb-73d8c70064bc" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent_427377c0-bdee-4817-a7bb-73d8c70064bc" xlink:type="arc" order="19"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent_88609e50-4ee8-4d29-b4fe-348f95c23fc8" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent_88609e50-4ee8-4d29-b4fe-348f95c23fc8" xlink:type="arc" order="20"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationLongTermDebtNoncurrent_8c5d6799-31c0-4ff6-bd40-a0166d11f1e4" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationLongTermDebtNoncurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationLongTermDebtNoncurrent_8c5d6799-31c0-4ff6-bd40-a0166d11f1e4" xlink:type="arc" order="21"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualNoncurrent_33afdff3-7a3e-4141-915e-2cfcbc74dc7a" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualNoncurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualNoncurrent_33afdff3-7a3e-4141-915e-2cfcbc74dc7a" xlink:type="arc" order="22"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationDeferredTaxLiabilities_6c5693c0-4723-4b4c-9da0-2722d8ffd10a" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationDeferredTaxLiabilities"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationDeferredTaxLiabilities_6c5693c0-4723-4b4c-9da0-2722d8ffd10a" xlink:type="arc" order="23"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentLiabilities_205cc519-db2d-402e-8878-5fb9b28b8ce2" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentLiabilities"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentLiabilities_205cc519-db2d-402e-8878-5fb9b28b8ce2" xlink:type="arc" order="24"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent_056af7cb-91cd-48f4-a010-a98756b600f8" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent_056af7cb-91cd-48f4-a010-a98756b600f8" xlink:type="arc" order="25"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation_9f2ab426-e3ce-4449-a5d7-3590a21c9395" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation_9f2ab426-e3ce-4449-a5d7-3590a21c9395" xlink:type="arc" order="26"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails"/>
  <link:definitionLink xlink:role="http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_ea431ab2-7e1d-4ada-9365-ba14c873156b" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_e1b890d3-a671-4b48-9691-95caf7979c89" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_ea431ab2-7e1d-4ada-9365-ba14c873156b" xlink:to="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_e1b890d3-a671-4b48-9691-95caf7979c89" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationAxis_d28f4b91-0612-4920-bdb8-481f54fbd4c2" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupClassificationAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_e1b890d3-a671-4b48-9691-95caf7979c89" xlink:to="loc_us-gaap_DisposalGroupClassificationAxis_d28f4b91-0612-4920-bdb8-481f54fbd4c2" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationDomain_d28f4b91-0612-4920-bdb8-481f54fbd4c2_default" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupClassificationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DisposalGroupClassificationAxis_d28f4b91-0612-4920-bdb8-481f54fbd4c2" xlink:to="loc_us-gaap_DisposalGroupClassificationDomain_d28f4b91-0612-4920-bdb8-481f54fbd4c2_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationDomain_ea71dfbb-d422-4ed2-bfc9-38353b4ee943" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupClassificationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DisposalGroupClassificationAxis_d28f4b91-0612-4920-bdb8-481f54fbd4c2" xlink:to="loc_us-gaap_DisposalGroupClassificationDomain_ea71dfbb-d422-4ed2-bfc9-38353b4ee943" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationsHeldforsaleMember_0ed2a815-3370-4856-8979-48d049069f93" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DiscontinuedOperationsHeldforsaleMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisposalGroupClassificationDomain_ea71dfbb-d422-4ed2-bfc9-38353b4ee943" xlink:to="loc_us-gaap_DiscontinuedOperationsHeldforsaleMember_0ed2a815-3370-4856-8979-48d049069f93" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_4c9f94d0-0c48-487b-b11e-3cc1aa5742eb" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_e1b890d3-a671-4b48-9691-95caf7979c89" xlink:to="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_4c9f94d0-0c48-487b-b11e-3cc1aa5742eb" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_4c9f94d0-0c48-487b-b11e-3cc1aa5742eb_default" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_4c9f94d0-0c48-487b-b11e-3cc1aa5742eb" xlink:to="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_4c9f94d0-0c48-487b-b11e-3cc1aa5742eb_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_c5d8c8ac-0d57-4ece-9746-d4a1a0c4dae2" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_4c9f94d0-0c48-487b-b11e-3cc1aa5742eb" xlink:to="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_c5d8c8ac-0d57-4ece-9746-d4a1a0c4dae2" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_LightDutyMember_864c5228-2106-4d72-a2bc-cdca37018222" xlink:href="wprt-20250630.xsd#wprt_LightDutyMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_c5d8c8ac-0d57-4ece-9746-d4a1a0c4dae2" xlink:to="loc_wprt_LightDutyMember_864c5228-2106-4d72-a2bc-cdca37018222" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue_ff0b3f33-9775-4c26-abd8-c0b43309408e" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_ea431ab2-7e1d-4ada-9365-ba14c873156b" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue_ff0b3f33-9775-4c26-abd8-c0b43309408e" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold_2a0fc46d-e16a-433e-b833-a60c2c9fbc83" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_ea431ab2-7e1d-4ada-9365-ba14c873156b" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold_2a0fc46d-e16a-433e-b833-a60c2c9fbc83" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss_0868da34-e6ba-4104-b1df-c40aca8a3b3a" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_ea431ab2-7e1d-4ada-9365-ba14c873156b" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss_0868da34-e6ba-4104-b1df-c40aca8a3b3a" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingExpensesAbstract_8af62a84-946f-4759-9932-167a5dcc8e6d" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationOperatingExpensesAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_ea431ab2-7e1d-4ada-9365-ba14c873156b" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingExpensesAbstract_8af62a84-946f-4759-9932-167a5dcc8e6d" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationResearchAndDevelopmentExpense_6349e7ee-512c-4a4d-bcd7-282ccb5e2e9f" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationResearchAndDevelopmentExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingExpensesAbstract_8af62a84-946f-4759-9932-167a5dcc8e6d" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationResearchAndDevelopmentExpense_6349e7ee-512c-4a4d-bcd7-282ccb5e2e9f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationGeneralAndAdministrativeExpense_5d708742-0edf-4590-ade1-6e1126e91d5f" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationGeneralAndAdministrativeExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingExpensesAbstract_8af62a84-946f-4759-9932-167a5dcc8e6d" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationGeneralAndAdministrativeExpense_5d708742-0edf-4590-ade1-6e1126e91d5f" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationSellingAndMarketingExpense_9125146a-c89c-4585-9f49-30fbb429c112" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationSellingAndMarketingExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingExpensesAbstract_8af62a84-946f-4759-9932-167a5dcc8e6d" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationSellingAndMarketingExpense_9125146a-c89c-4585-9f49-30fbb429c112" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationForeignExchangeGainLoss_f7d2f580-c932-4c6a-a694-b34ea13b4385" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationForeignExchangeGainLoss"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingExpensesAbstract_8af62a84-946f-4759-9932-167a5dcc8e6d" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationForeignExchangeGainLoss_f7d2f580-c932-4c6a-a694-b34ea13b4385" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization_8c20b139-5cc2-41b9-a8e9-583c7e37ff0e" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingExpensesAbstract_8af62a84-946f-4759-9932-167a5dcc8e6d" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization_8c20b139-5cc2-41b9-a8e9-583c7e37ff0e" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense_8683e4a8-878c-42ce-8cef-94ce9b06762e" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingExpensesAbstract_8af62a84-946f-4759-9932-167a5dcc8e6d" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense_8683e4a8-878c-42ce-8cef-94ce9b06762e" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss_ff7caefc-2177-4bf1-a146-01096f8da45f" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_ea431ab2-7e1d-4ada-9365-ba14c873156b" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss_ff7caefc-2177-4bf1-a146-01096f8da45f" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationIncomeLossFromEquityMethodInvestments_3b5e458e-ac9b-45a1-8b01-23780bbd2a88" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationIncomeLossFromEquityMethodInvestments"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_ea431ab2-7e1d-4ada-9365-ba14c873156b" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationIncomeLossFromEquityMethodInvestments_3b5e458e-ac9b-45a1-8b01-23780bbd2a88" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax_5c944b70-d367-4d8a-9ac4-f3b7efeeb205" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_ea431ab2-7e1d-4ada-9365-ba14c873156b" xlink:to="loc_us-gaap_DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax_5c944b70-d367-4d8a-9ac4-f3b7efeeb205" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationImpairmentOfLongLivedAssets_ae1a6f74-bc66-438c-92da-222e98471807" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationImpairmentOfLongLivedAssets"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_ea431ab2-7e1d-4ada-9365-ba14c873156b" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationImpairmentOfLongLivedAssets_ae1a6f74-bc66-438c-92da-222e98471807" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationInterestExpense_cc7ea476-67b2-48b4-be17-10aae74d299c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationInterestExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_ea431ab2-7e1d-4ada-9365-ba14c873156b" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationInterestExpense_cc7ea476-67b2-48b4-be17-10aae74d299c" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationInterestAndOtherIncomeExpense_45e89ed4-8d59-4340-ae67-46f4108c3711" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationInterestAndOtherIncomeExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_ea431ab2-7e1d-4ada-9365-ba14c873156b" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationInterestAndOtherIncomeExpense_45e89ed4-8d59-4340-ae67-46f4108c3711" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax_c138c750-f90e-44a5-a49c-f3934cf5ca2f" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_ea431ab2-7e1d-4ada-9365-ba14c873156b" xlink:to="loc_us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax_c138c750-f90e-44a5-a49c-f3934cf5ca2f" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation_43e42bd0-61c2-4c61-a9be-b1fc95a10e8a" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_ea431ab2-7e1d-4ada-9365-ba14c873156b" xlink:to="loc_us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation_43e42bd0-61c2-4c61-a9be-b1fc95a10e8a" xlink:type="arc" order="11"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity_f8e410f7-ce4d-40dc-992a-513a87eae160" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_ea431ab2-7e1d-4ada-9365-ba14c873156b" xlink:to="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity_f8e410f7-ce4d-40dc-992a-513a87eae160" xlink:type="arc" order="12"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.westport.com/role/AccountsreceivableScheduleofAccountsReceivableDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#AccountsreceivableScheduleofAccountsReceivableDetails"/>
  <link:definitionLink xlink:role="http://www.westport.com/role/AccountsreceivableScheduleofAccountsReceivableDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_4e35e094-1b63-4040-9285-20cbafcd47da" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountsNotesAndLoansReceivableLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable_fd42e7c1-bca5-4ec8-a96d-cb045366fc2e" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_4e35e094-1b63-4040-9285-20cbafcd47da" xlink:to="loc_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable_fd42e7c1-bca5-4ec8-a96d-cb045366fc2e" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_9bd5b0a6-3b23-4e90-ad21-0f0abb511fd0" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable_fd42e7c1-bca5-4ec8-a96d-cb045366fc2e" xlink:to="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_9bd5b0a6-3b23-4e90-ad21-0f0abb511fd0" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyDomain_9bd5b0a6-3b23-4e90-ad21-0f0abb511fd0_default" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RelatedPartyDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_9bd5b0a6-3b23-4e90-ad21-0f0abb511fd0" xlink:to="loc_us-gaap_RelatedPartyDomain_9bd5b0a6-3b23-4e90-ad21-0f0abb511fd0_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyDomain_94c7481b-c491-4e0e-a97e-dd5113686555" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RelatedPartyDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_9bd5b0a6-3b23-4e90-ad21-0f0abb511fd0" xlink:to="loc_us-gaap_RelatedPartyDomain_94c7481b-c491-4e0e-a97e-dd5113686555" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyMember_43f35102-d905-4f29-8084-977d3dcef5c1" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RelatedPartyMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RelatedPartyDomain_94c7481b-c491-4e0e-a97e-dd5113686555" xlink:to="loc_us-gaap_RelatedPartyMember_43f35102-d905-4f29-8084-977d3dcef5c1" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_TradeAccountsReceivable_a2082cfa-7331-408b-a689-4f42bba5a85f" xlink:href="wprt-20250630.xsd#wprt_TradeAccountsReceivable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_4e35e094-1b63-4040-9285-20cbafcd47da" xlink:to="loc_wprt_TradeAccountsReceivable_a2082cfa-7331-408b-a689-4f42bba5a85f" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_HoldbackReceivablesNetCurrent_45c20b20-7f96-4fc5-815d-095b68f4d3fc" xlink:href="wprt-20250630.xsd#wprt_HoldbackReceivablesNetCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_4e35e094-1b63-4040-9285-20cbafcd47da" xlink:to="loc_wprt_HoldbackReceivablesNetCurrent_45c20b20-7f96-4fc5-815d-095b68f4d3fc" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherReceivables_2fd96fa5-8c3d-4b3c-9249-df0568554825" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherReceivables"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_4e35e094-1b63-4040-9285-20cbafcd47da" xlink:to="loc_us-gaap_OtherReceivables_2fd96fa5-8c3d-4b3c-9249-df0568554825" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherReceivablesNetCurrent_7de6a098-8ab5-4851-afa9-65743d60c71f" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherReceivablesNetCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_4e35e094-1b63-4040-9285-20cbafcd47da" xlink:to="loc_us-gaap_OtherReceivablesNetCurrent_7de6a098-8ab5-4851-afa9-65743d60c71f" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_1dbb4593-2ce7-4fca-938e-9f6a48965402" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_4e35e094-1b63-4040-9285-20cbafcd47da" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_1dbb4593-2ce7-4fca-938e-9f6a48965402" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent_a1c181c9-83d8-408d-b744-9f1b6b5e4947" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountsReceivableNetCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_4e35e094-1b63-4040-9285-20cbafcd47da" xlink:to="loc_us-gaap_AccountsReceivableNetCurrent_a1c181c9-83d8-408d-b744-9f1b6b5e4947" xlink:type="arc" order="5"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.westport.com/role/AccountsreceivableNarrativeDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#AccountsreceivableNarrativeDetails"/>
  <link:definitionLink xlink:role="http://www.westport.com/role/AccountsreceivableNarrativeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_e9f813fb-cdb8-4d40-817b-49df407b069a" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountsNotesAndLoansReceivableLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable_3e006fed-7088-401d-a43e-5a68988db457" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_e9f813fb-cdb8-4d40-817b-49df407b069a" xlink:to="loc_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable_3e006fed-7088-401d-a43e-5a68988db457" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_d441c56b-e6b6-402c-a4a2-02eae460b4e3" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable_3e006fed-7088-401d-a43e-5a68988db457" xlink:to="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_d441c56b-e6b6-402c-a4a2-02eae460b4e3" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_EquityMethodInvesteeNameDomain_d441c56b-e6b6-402c-a4a2-02eae460b4e3_default" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_EquityMethodInvesteeNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_d441c56b-e6b6-402c-a4a2-02eae460b4e3" xlink:to="loc_srt_EquityMethodInvesteeNameDomain_d441c56b-e6b6-402c-a4a2-02eae460b4e3_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_EquityMethodInvesteeNameDomain_a9a14258-950a-4ebd-82a9-1db4c4b511f1" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_EquityMethodInvesteeNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_d441c56b-e6b6-402c-a4a2-02eae460b4e3" xlink:to="loc_srt_EquityMethodInvesteeNameDomain_a9a14258-950a-4ebd-82a9-1db4c4b511f1" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_CumminsWestportIncMember_d9e9e0a4-288a-488a-b516-9d4b236e51a7" xlink:href="wprt-20250630.xsd#wprt_CumminsWestportIncMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_EquityMethodInvesteeNameDomain_a9a14258-950a-4ebd-82a9-1db4c4b511f1" xlink:to="loc_wprt_CumminsWestportIncMember_d9e9e0a4-288a-488a-b516-9d4b236e51a7" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_HoldbackTerm_215c2221-1d2a-4932-b12d-199cceac766e" xlink:href="wprt-20250630.xsd#wprt_HoldbackTerm"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_e9f813fb-cdb8-4d40-817b-49df407b069a" xlink:to="loc_wprt_HoldbackTerm_215c2221-1d2a-4932-b12d-199cceac766e" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_HoldbackReceivablesNetCurrent_0b98a177-8fa4-43ea-bb21-198ca5c53c83" xlink:href="wprt-20250630.xsd#wprt_HoldbackReceivablesNetCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_e9f813fb-cdb8-4d40-817b-49df407b069a" xlink:to="loc_wprt_HoldbackReceivablesNetCurrent_0b98a177-8fa4-43ea-bb21-198ca5c53c83" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.westport.com/role/LongterminvestmentsScheduleofInvestmentsDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#LongterminvestmentsScheduleofInvestmentsDetails"/>
  <link:definitionLink xlink:role="http://www.westport.com/role/LongterminvestmentsScheduleofInvestmentsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfInvestmentsLineItems_91f805ae-94b2-4dfe-9840-7bcb4ce8b3cf" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfInvestmentsLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfInvestmentsTable_0159006d-7ee8-4dc7-8f18-f07cc308d8b1" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfInvestmentsTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ScheduleOfInvestmentsLineItems_91f805ae-94b2-4dfe-9840-7bcb4ce8b3cf" xlink:to="loc_us-gaap_ScheduleOfInvestmentsTable_0159006d-7ee8-4dc7-8f18-f07cc308d8b1" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_06d6fa2f-c7b9-4ee7-9c5e-44eaf1851411" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfInvestmentsTable_0159006d-7ee8-4dc7-8f18-f07cc308d8b1" xlink:to="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_06d6fa2f-c7b9-4ee7-9c5e-44eaf1851411" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_EquityMethodInvesteeNameDomain_06d6fa2f-c7b9-4ee7-9c5e-44eaf1851411_default" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_EquityMethodInvesteeNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_06d6fa2f-c7b9-4ee7-9c5e-44eaf1851411" xlink:to="loc_srt_EquityMethodInvesteeNameDomain_06d6fa2f-c7b9-4ee7-9c5e-44eaf1851411_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_EquityMethodInvesteeNameDomain_6c785a5c-d450-44ac-a855-bb6950212b8e" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_EquityMethodInvesteeNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_06d6fa2f-c7b9-4ee7-9c5e-44eaf1851411" xlink:to="loc_srt_EquityMethodInvesteeNameDomain_6c785a5c-d450-44ac-a855-bb6950212b8e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_CespiraCanadaLPMember_45fba718-8255-42a3-9199-58a305645419" xlink:href="wprt-20250630.xsd#wprt_CespiraCanadaLPMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_EquityMethodInvesteeNameDomain_6c785a5c-d450-44ac-a855-bb6950212b8e" xlink:to="loc_wprt_CespiraCanadaLPMember_45fba718-8255-42a3-9199-58a305645419" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_CespiraSwedenABMember_04278ac2-3fa0-4e92-87ce-0ee9db2946d4" xlink:href="wprt-20250630.xsd#wprt_CespiraSwedenABMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_EquityMethodInvesteeNameDomain_6c785a5c-d450-44ac-a855-bb6950212b8e" xlink:to="loc_wprt_CespiraSwedenABMember_04278ac2-3fa0-4e92-87ce-0ee9db2946d4" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_OtherEquityAccountedForInvesteesMember_b545720e-f570-4d32-a65d-947c9ae2d4c5" xlink:href="wprt-20250630.xsd#wprt_OtherEquityAccountedForInvesteesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_EquityMethodInvesteeNameDomain_6c785a5c-d450-44ac-a855-bb6950212b8e" xlink:to="loc_wprt_OtherEquityAccountedForInvesteesMember_b545720e-f570-4d32-a65d-947c9ae2d4c5" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermInvestments_7f51337b-5298-40c5-a3bf-9ebca1fa182d" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LongTermInvestments"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfInvestmentsLineItems_91f805ae-94b2-4dfe-9840-7bcb4ce8b3cf" xlink:to="loc_us-gaap_LongTermInvestments_7f51337b-5298-40c5-a3bf-9ebca1fa182d" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#LongterminvestmentsBalanceSheetDetails"/>
  <link:definitionLink xlink:role="http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfInvestmentsLineItems_8cc6b6e1-d150-4730-b96f-06cbeb830dbd" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfInvestmentsLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfInvestmentsTable_c7278e9a-0345-47a0-81ae-1ed855b70134" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfInvestmentsTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ScheduleOfInvestmentsLineItems_8cc6b6e1-d150-4730-b96f-06cbeb830dbd" xlink:to="loc_us-gaap_ScheduleOfInvestmentsTable_c7278e9a-0345-47a0-81ae-1ed855b70134" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeAxis_f78e5120-bc30-4d22-96f1-f91b8b6d101c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfInvestmentsTable_c7278e9a-0345-47a0-81ae-1ed855b70134" xlink:to="loc_us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeAxis_f78e5120-bc30-4d22-96f1-f91b8b6d101c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeDomain_f78e5120-bc30-4d22-96f1-f91b8b6d101c_default" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeAxis_f78e5120-bc30-4d22-96f1-f91b8b6d101c" xlink:to="loc_us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeDomain_f78e5120-bc30-4d22-96f1-f91b8b6d101c_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeDomain_75c5e84c-1fc5-4a19-bbdb-1f69994c5f1f" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeAxis_f78e5120-bc30-4d22-96f1-f91b8b6d101c" xlink:to="loc_us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeDomain_75c5e84c-1fc5-4a19-bbdb-1f69994c5f1f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_CespiraJointVentureMember_df80c4b3-e4f7-4b2d-859d-0335e0846066" xlink:href="wprt-20250630.xsd#wprt_CespiraJointVentureMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeDomain_75c5e84c-1fc5-4a19-bbdb-1f69994c5f1f" xlink:to="loc_wprt_CespiraJointVentureMember_df80c4b3-e4f7-4b2d-859d-0335e0846066" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrentAbstract_c4819fae-9686-464d-9cca-8c68126fe662" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AssetsCurrentAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfInvestmentsLineItems_8cc6b6e1-d150-4730-b96f-06cbeb830dbd" xlink:to="loc_us-gaap_AssetsCurrentAbstract_c4819fae-9686-464d-9cca-8c68126fe662" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_6f128b60-26bb-4297-bf48-05077fadc0f5" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsCurrentAbstract_c4819fae-9686-464d-9cca-8c68126fe662" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_6f128b60-26bb-4297-bf48-05077fadc0f5" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent_e02d5327-bcc8-48d5-b38a-76a82ce8ebb7" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountsReceivableNetCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsCurrentAbstract_c4819fae-9686-464d-9cca-8c68126fe662" xlink:to="loc_us-gaap_AccountsReceivableNetCurrent_e02d5327-bcc8-48d5-b38a-76a82ce8ebb7" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryNet_b20bfb3e-46dc-45bd-92a3-7cd07a5b68f4" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InventoryNet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsCurrentAbstract_c4819fae-9686-464d-9cca-8c68126fe662" xlink:to="loc_us-gaap_InventoryNet_b20bfb3e-46dc-45bd-92a3-7cd07a5b68f4" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PrepaidExpenseCurrentAndNoncurrent_f8f9ea9a-96b0-442a-9f35-ea085c4a0ac5" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PrepaidExpenseCurrentAndNoncurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsCurrentAbstract_c4819fae-9686-464d-9cca-8c68126fe662" xlink:to="loc_us-gaap_PrepaidExpenseCurrentAndNoncurrent_f8f9ea9a-96b0-442a-9f35-ea085c4a0ac5" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrent_bf466f38-a6a8-453c-b32b-1fbc223d30d2" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AssetsCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsCurrentAbstract_c4819fae-9686-464d-9cca-8c68126fe662" xlink:to="loc_us-gaap_AssetsCurrent_bf466f38-a6a8-453c-b32b-1fbc223d30d2" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_3bf8e35d-0f9d-433f-be52-f8da0febcf0a" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfInvestmentsLineItems_8cc6b6e1-d150-4730-b96f-06cbeb830dbd" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentNet_3bf8e35d-0f9d-433f-be52-f8da0febcf0a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_0e2ceca5-d8c5-4ddf-b623-16ac6a0ff499" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfInvestmentsLineItems_8cc6b6e1-d150-4730-b96f-06cbeb830dbd" xlink:to="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_0e2ceca5-d8c5-4ddf-b623-16ac6a0ff499" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_f869d2a3-9fb4-47cf-a0f8-256248708bfc" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_Goodwill"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfInvestmentsLineItems_8cc6b6e1-d150-4730-b96f-06cbeb830dbd" xlink:to="loc_us-gaap_Goodwill_f869d2a3-9fb4-47cf-a0f8-256248708bfc" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsGross_a0e37a95-3633-4dab-a54e-f7d6c77c7120" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DeferredTaxAssetsGross"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfInvestmentsLineItems_8cc6b6e1-d150-4730-b96f-06cbeb830dbd" xlink:to="loc_us-gaap_DeferredTaxAssetsGross_a0e37a95-3633-4dab-a54e-f7d6c77c7120" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Assets_87311f86-907d-4a11-ad96-374d61fe672c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_Assets"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfInvestmentsLineItems_8cc6b6e1-d150-4730-b96f-06cbeb830dbd" xlink:to="loc_us-gaap_Assets_87311f86-907d-4a11-ad96-374d61fe672c" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrentAbstract_1b101042-c513-415a-af39-21477d0fd228" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LiabilitiesCurrentAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfInvestmentsLineItems_8cc6b6e1-d150-4730-b96f-06cbeb830dbd" xlink:to="loc_us-gaap_LiabilitiesCurrentAbstract_1b101042-c513-415a-af39-21477d0fd228" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent_351c6253-5210-47ea-9a2c-844ab45b3830" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_1b101042-c513-415a-af39-21477d0fd228" xlink:to="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent_351c6253-5210-47ea-9a2c-844ab45b3830" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermBorrowings_43513f95-6f00-4120-a137-cb3b871cd2c1" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShortTermBorrowings"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_1b101042-c513-415a-af39-21477d0fd228" xlink:to="loc_us-gaap_ShortTermBorrowings_43513f95-6f00-4120-a137-cb3b871cd2c1" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherLiabilitiesCurrent_6c8f7232-5ad9-479e-8016-6d7249d48be3" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherLiabilitiesCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_1b101042-c513-415a-af39-21477d0fd228" xlink:to="loc_us-gaap_OtherLiabilitiesCurrent_6c8f7232-5ad9-479e-8016-6d7249d48be3" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilities_0b4963b7-cdc5-4b9a-b1a7-998866be6749" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DeferredIncomeTaxLiabilities"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_1b101042-c513-415a-af39-21477d0fd228" xlink:to="loc_us-gaap_DeferredIncomeTaxLiabilities_0b4963b7-cdc5-4b9a-b1a7-998866be6749" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrent_7009d297-0085-4d8c-9970-25170016a94a" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LiabilitiesCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_1b101042-c513-415a-af39-21477d0fd228" xlink:to="loc_us-gaap_LiabilitiesCurrent_7009d297-0085-4d8c-9970-25170016a94a" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtAndCapitalLeaseObligations_3aed1a91-360f-4502-988a-10e1629b2f13" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligations"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfInvestmentsLineItems_8cc6b6e1-d150-4730-b96f-06cbeb830dbd" xlink:to="loc_us-gaap_LongTermDebtAndCapitalLeaseObligations_3aed1a91-360f-4502-988a-10e1629b2f13" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherLiabilitiesNoncurrent_1c2da50e-4a91-4be2-8b3e-925ad51ef0d5" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherLiabilitiesNoncurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfInvestmentsLineItems_8cc6b6e1-d150-4730-b96f-06cbeb830dbd" xlink:to="loc_us-gaap_OtherLiabilitiesNoncurrent_1c2da50e-4a91-4be2-8b3e-925ad51ef0d5" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Liabilities_89c4062e-2b1e-4342-bc4a-f7f406063cda" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_Liabilities"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfInvestmentsLineItems_8cc6b6e1-d150-4730-b96f-06cbeb830dbd" xlink:to="loc_us-gaap_Liabilities_89c4062e-2b1e-4342-bc4a-f7f406063cda" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsNet_ae5d9c76-51b3-42ee-b2a8-88eb8b8b9617" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AssetsNet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfInvestmentsLineItems_8cc6b6e1-d150-4730-b96f-06cbeb830dbd" xlink:to="loc_us-gaap_AssetsNet_ae5d9c76-51b3-42ee-b2a8-88eb8b8b9617" xlink:type="arc" order="10"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.westport.com/role/LongterminvestmentsIncomeStatementDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#LongterminvestmentsIncomeStatementDetails"/>
  <link:definitionLink xlink:role="http://www.westport.com/role/LongterminvestmentsIncomeStatementDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfInvestmentsLineItems_151944f1-75ca-4270-979c-46c95c4c8bb2" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfInvestmentsLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfInvestmentsTable_45d4cca1-f708-4b45-a590-7f3c6cd8258e" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfInvestmentsTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ScheduleOfInvestmentsLineItems_151944f1-75ca-4270-979c-46c95c4c8bb2" xlink:to="loc_us-gaap_ScheduleOfInvestmentsTable_45d4cca1-f708-4b45-a590-7f3c6cd8258e" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeAxis_accb8a71-fb0f-4989-9622-7ff2afd7c156" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfInvestmentsTable_45d4cca1-f708-4b45-a590-7f3c6cd8258e" xlink:to="loc_us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeAxis_accb8a71-fb0f-4989-9622-7ff2afd7c156" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeDomain_accb8a71-fb0f-4989-9622-7ff2afd7c156_default" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeAxis_accb8a71-fb0f-4989-9622-7ff2afd7c156" xlink:to="loc_us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeDomain_accb8a71-fb0f-4989-9622-7ff2afd7c156_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeDomain_37cd3ffd-5910-447b-9ef9-105b7131b6bf" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeAxis_accb8a71-fb0f-4989-9622-7ff2afd7c156" xlink:to="loc_us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeDomain_37cd3ffd-5910-447b-9ef9-105b7131b6bf" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_CespiraJointVentureMember_f14a80a9-e61d-40af-a2c3-f6346514da60" xlink:href="wprt-20250630.xsd#wprt_CespiraJointVentureMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeDomain_37cd3ffd-5910-447b-9ef9-105b7131b6bf" xlink:to="loc_wprt_CespiraJointVentureMember_f14a80a9-e61d-40af-a2c3-f6346514da60" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_a52ff1a2-d184-44e6-a7e6-06264895bdb8" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfInvestmentsLineItems_151944f1-75ca-4270-979c-46c95c4c8bb2" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_a52ff1a2-d184-44e6-a7e6-06264895bdb8" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfRevenue_1b88416b-ff0d-46d8-a725-ac64f9ab709a" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CostOfRevenue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfInvestmentsLineItems_151944f1-75ca-4270-979c-46c95c4c8bb2" xlink:to="loc_us-gaap_CostOfRevenue_1b88416b-ff0d-46d8-a725-ac64f9ab709a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit_a803aa36-32d8-4ce7-87c2-b2b47cb3309d" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_GrossProfit"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfInvestmentsLineItems_151944f1-75ca-4270-979c-46c95c4c8bb2" xlink:to="loc_us-gaap_GrossProfit_a803aa36-32d8-4ce7-87c2-b2b47cb3309d" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfRevenueAbstract_087ec0e3-b8ec-4d5d-9e9e-9d45fd2f2f50" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CostOfRevenueAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfInvestmentsLineItems_151944f1-75ca-4270-979c-46c95c4c8bb2" xlink:to="loc_us-gaap_CostOfRevenueAbstract_087ec0e3-b8ec-4d5d-9e9e-9d45fd2f2f50" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpense_ef3e9e5e-94df-4566-aa97-f16afc05a61b" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ResearchAndDevelopmentExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CostOfRevenueAbstract_087ec0e3-b8ec-4d5d-9e9e-9d45fd2f2f50" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpense_ef3e9e5e-94df-4566-aa97-f16afc05a61b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpense_b2be26db-b621-432b-9b24-970f42aab33b" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_GeneralAndAdministrativeExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CostOfRevenueAbstract_087ec0e3-b8ec-4d5d-9e9e-9d45fd2f2f50" xlink:to="loc_us-gaap_GeneralAndAdministrativeExpense_b2be26db-b621-432b-9b24-970f42aab33b" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingAndMarketingExpense_dc1b0343-73ae-4798-b369-d328881a6ce4" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SellingAndMarketingExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CostOfRevenueAbstract_087ec0e3-b8ec-4d5d-9e9e-9d45fd2f2f50" xlink:to="loc_us-gaap_SellingAndMarketingExpense_dc1b0343-73ae-4798-b369-d328881a6ce4" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_74351845-c05c-48d3-a905-3db3023a1ef5" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ForeignCurrencyTransactionGainLossBeforeTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CostOfRevenueAbstract_087ec0e3-b8ec-4d5d-9e9e-9d45fd2f2f50" xlink:to="loc_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_74351845-c05c-48d3-a905-3db3023a1ef5" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DepreciationAmortizationAndAccretionNet_6a5d4cc2-d010-4d2a-8910-22156b425372" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DepreciationAmortizationAndAccretionNet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CostOfRevenueAbstract_087ec0e3-b8ec-4d5d-9e9e-9d45fd2f2f50" xlink:to="loc_us-gaap_DepreciationAmortizationAndAccretionNet_6a5d4cc2-d010-4d2a-8910-22156b425372" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostsAndExpenses_7861b4bf-a48f-4290-8507-6e5769478dc5" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CostsAndExpenses"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CostOfRevenueAbstract_087ec0e3-b8ec-4d5d-9e9e-9d45fd2f2f50" xlink:to="loc_us-gaap_CostsAndExpenses_7861b4bf-a48f-4290-8507-6e5769478dc5" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_21f86718-0028-4b98-bf76-6247e8ef9cda" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfInvestmentsLineItems_151944f1-75ca-4270-979c-46c95c4c8bb2" xlink:to="loc_us-gaap_OperatingIncomeLoss_21f86718-0028-4b98-bf76-6247e8ef9cda" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestIncomeExpenseNonoperatingNet_44b3d215-e9fb-4dfb-a692-ef62d19c07d9" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InterestIncomeExpenseNonoperatingNet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfInvestmentsLineItems_151944f1-75ca-4270-979c-46c95c4c8bb2" xlink:to="loc_us-gaap_InterestIncomeExpenseNonoperatingNet_44b3d215-e9fb-4dfb-a692-ef62d19c07d9" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_389a2075-cf32-454b-b10b-8b9700103b12" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfInvestmentsLineItems_151944f1-75ca-4270-979c-46c95c4c8bb2" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_389a2075-cf32-454b-b10b-8b9700103b12" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_34278110-2763-4ec5-95d3-0a092b9188b9" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfInvestmentsLineItems_151944f1-75ca-4270-979c-46c95c4c8bb2" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_34278110-2763-4ec5-95d3-0a092b9188b9" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_41b95b70-df51-493d-8f73-135b7af80567" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetIncomeLoss"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfInvestmentsLineItems_151944f1-75ca-4270-979c-46c95c4c8bb2" xlink:to="loc_us-gaap_NetIncomeLoss_41b95b70-df51-493d-8f73-135b7af80567" xlink:type="arc" order="8"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.westport.com/role/PropertyplantandequipmentDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#PropertyplantandequipmentDetails"/>
  <link:definitionLink xlink:role="http://www.westport.com/role/PropertyplantandequipmentDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentLineItems_d3d25fa0-0558-435c-b010-05e9da71df21" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PropertyPlantAndEquipmentLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_e214b62d-d58e-476e-94c7-f41221c37c55" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_d3d25fa0-0558-435c-b010-05e9da71df21" xlink:to="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_e214b62d-d58e-476e-94c7-f41221c37c55" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_1fb368dc-d948-47a1-b4f2-2910a66d7dc0" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_e214b62d-d58e-476e-94c7-f41221c37c55" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_1fb368dc-d948-47a1-b4f2-2910a66d7dc0" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_1fb368dc-d948-47a1-b4f2-2910a66d7dc0_default" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_1fb368dc-d948-47a1-b4f2-2910a66d7dc0" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_1fb368dc-d948-47a1-b4f2-2910a66d7dc0_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_42cab6ac-9106-448f-8cc5-626d8fb2ed84" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_1fb368dc-d948-47a1-b4f2-2910a66d7dc0" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_42cab6ac-9106-448f-8cc5-626d8fb2ed84" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ComputerEquipmentAndSoftwareMember_ac872a7f-6660-4a40-b5bf-1d8a70618ade" xlink:href="wprt-20250630.xsd#wprt_ComputerEquipmentAndSoftwareMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_42cab6ac-9106-448f-8cc5-626d8fb2ed84" xlink:to="loc_wprt_ComputerEquipmentAndSoftwareMember_ac872a7f-6660-4a40-b5bf-1d8a70618ade" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FurnitureAndFixturesMember_220b2e85-cdf9-4679-a919-04a1c1917bb9" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_FurnitureAndFixturesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_42cab6ac-9106-448f-8cc5-626d8fb2ed84" xlink:to="loc_us-gaap_FurnitureAndFixturesMember_220b2e85-cdf9-4679-a919-04a1c1917bb9" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MachineryAndEquipmentMember_78e0f328-efa1-4b8c-8497-ba987a7ef41c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_MachineryAndEquipmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_42cab6ac-9106-448f-8cc5-626d8fb2ed84" xlink:to="loc_us-gaap_MachineryAndEquipmentMember_78e0f328-efa1-4b8c-8497-ba987a7ef41c" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseholdImprovementsMember_35b1c857-bf60-443b-85ca-5b8e7aac13ad" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LeaseholdImprovementsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_42cab6ac-9106-448f-8cc5-626d8fb2ed84" xlink:to="loc_us-gaap_LeaseholdImprovementsMember_35b1c857-bf60-443b-85ca-5b8e7aac13ad" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentGross_e9ef19f9-79a2-4e13-a31a-02634b4c417e" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PropertyPlantAndEquipmentGross"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_d3d25fa0-0558-435c-b010-05e9da71df21" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentGross_e9ef19f9-79a2-4e13-a31a-02634b4c417e" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_e8ec2dea-008f-4dbb-92d9-0a2a0ff7f68c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_d3d25fa0-0558-435c-b010-05e9da71df21" xlink:to="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_e8ec2dea-008f-4dbb-92d9-0a2a0ff7f68c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_e193db4d-c5a4-4f7d-951f-2f074f344cb1" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_d3d25fa0-0558-435c-b010-05e9da71df21" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentNet_e193db4d-c5a4-4f7d-951f-2f074f344cb1" xlink:type="arc" order="2"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.westport.com/role/AccountspayableandaccruedliabilitiesDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#AccountspayableandaccruedliabilitiesDetails"/>
  <link:definitionLink xlink:role="http://www.westport.com/role/AccountspayableandaccruedliabilitiesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermDebtLineItems_53322454-10f8-4bb6-bd39-3974addabb5d" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShortTermDebtLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShortTermDebtTable_5bbbc117-3efc-4a67-a7f3-0e7abf0e6136" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfShortTermDebtTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShortTermDebtLineItems_53322454-10f8-4bb6-bd39-3974addabb5d" xlink:to="loc_us-gaap_ScheduleOfShortTermDebtTable_5bbbc117-3efc-4a67-a7f3-0e7abf0e6136" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_60d9f02a-43c5-4762-835f-496106204900" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShortTermDebtTable_5bbbc117-3efc-4a67-a7f3-0e7abf0e6136" xlink:to="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_60d9f02a-43c5-4762-835f-496106204900" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyDomain_60d9f02a-43c5-4762-835f-496106204900_default" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RelatedPartyDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_60d9f02a-43c5-4762-835f-496106204900" xlink:to="loc_us-gaap_RelatedPartyDomain_60d9f02a-43c5-4762-835f-496106204900_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyDomain_33c3fbff-4776-469d-8192-99ce450e8632" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RelatedPartyDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_60d9f02a-43c5-4762-835f-496106204900" xlink:to="loc_us-gaap_RelatedPartyDomain_33c3fbff-4776-469d-8192-99ce450e8632" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyMember_a9a36d84-064b-4c43-8a97-e12b43087934" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RelatedPartyMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RelatedPartyDomain_33c3fbff-4776-469d-8192-99ce450e8632" xlink:to="loc_us-gaap_RelatedPartyMember_a9a36d84-064b-4c43-8a97-e12b43087934" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableTradeCurrent_b41cfa46-d892-4e5b-9d82-b432d4a6762b" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountsPayableTradeCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShortTermDebtLineItems_53322454-10f8-4bb6-bd39-3974addabb5d" xlink:to="loc_us-gaap_AccountsPayableTradeCurrent_b41cfa46-d892-4e5b-9d82-b432d4a6762b" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent_5cb80c8e-a808-4aa3-9600-5609f3e8699c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShortTermDebtLineItems_53322454-10f8-4bb6-bd39-3974addabb5d" xlink:to="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent_5cb80c8e-a808-4aa3-9600-5609f3e8699c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedIncomeTaxesCurrent_a8ad6ec1-b81d-43cd-a877-cc1b8680ed9f" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccruedIncomeTaxesCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShortTermDebtLineItems_53322454-10f8-4bb6-bd39-3974addabb5d" xlink:to="loc_us-gaap_AccruedIncomeTaxesCurrent_a8ad6ec1-b81d-43cd-a877-cc1b8680ed9f" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerLiabilityCurrent_9580d420-9d25-4dcd-b108-14450245732d" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ContractWithCustomerLiabilityCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShortTermDebtLineItems_53322454-10f8-4bb6-bd39-3974addabb5d" xlink:to="loc_us-gaap_ContractWithCustomerLiabilityCurrent_9580d420-9d25-4dcd-b108-14450245732d" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNotesPayableCurrent_f0346d28-d462-4b22-95a6-e4ea9ad40c16" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherNotesPayableCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShortTermDebtLineItems_53322454-10f8-4bb6-bd39-3974addabb5d" xlink:to="loc_us-gaap_OtherNotesPayableCurrent_f0346d28-d462-4b22-95a6-e4ea9ad40c16" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent_dffdd9c4-13fc-4bf5-8fa8-65061a131e2f" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShortTermDebtLineItems_53322454-10f8-4bb6-bd39-3974addabb5d" xlink:to="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent_dffdd9c4-13fc-4bf5-8fa8-65061a131e2f" xlink:type="arc" order="5"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.westport.com/role/LongtermdebtTermLoanFacilitiesDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#LongtermdebtTermLoanFacilitiesDetails"/>
  <link:definitionLink xlink:role="http://www.westport.com/role/LongtermdebtTermLoanFacilitiesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentLineItems_b9f67c5d-190b-4ab0-ae9f-f451a8d3c272" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtInstrumentLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTable_60674fee-b784-4edd-a3b0-5f6a948605ab" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtInstrumentTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DebtInstrumentLineItems_b9f67c5d-190b-4ab0-ae9f-f451a8d3c272" xlink:to="loc_us-gaap_DebtInstrumentTable_60674fee-b784-4edd-a3b0-5f6a948605ab" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityAxis_7c2b31c3-1875-4108-8379-342af2acefed" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CreditFacilityAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_60674fee-b784-4edd-a3b0-5f6a948605ab" xlink:to="loc_us-gaap_CreditFacilityAxis_7c2b31c3-1875-4108-8379-342af2acefed" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_7c2b31c3-1875-4108-8379-342af2acefed_default" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CreditFacilityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_CreditFacilityAxis_7c2b31c3-1875-4108-8379-342af2acefed" xlink:to="loc_us-gaap_CreditFacilityDomain_7c2b31c3-1875-4108-8379-342af2acefed_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_e1b8903e-28a6-45c1-8b9f-c43c63d6aa70" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CreditFacilityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_CreditFacilityAxis_7c2b31c3-1875-4108-8379-342af2acefed" xlink:to="loc_us-gaap_CreditFacilityDomain_e1b8903e-28a6-45c1-8b9f-c43c63d6aa70" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SecuredDebtMember_2ffd8acf-afde-4f1f-b3b3-9b17e649ed81" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SecuredDebtMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CreditFacilityDomain_e1b8903e-28a6-45c1-8b9f-c43c63d6aa70" xlink:to="loc_us-gaap_SecuredDebtMember_2ffd8acf-afde-4f1f-b3b3-9b17e649ed81" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_5e5f8ac5-aaa5-4b57-845d-f7a6a260d3e2" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_60674fee-b784-4edd-a3b0-5f6a948605ab" xlink:to="loc_us-gaap_DebtInstrumentAxis_5e5f8ac5-aaa5-4b57-845d-f7a6a260d3e2" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_5e5f8ac5-aaa5-4b57-845d-f7a6a260d3e2_default" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DebtInstrumentAxis_5e5f8ac5-aaa5-4b57-845d-f7a6a260d3e2" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_5e5f8ac5-aaa5-4b57-845d-f7a6a260d3e2_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_21d96403-bc7e-4cc4-a1be-83ca51ec6c54" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DebtInstrumentAxis_5e5f8ac5-aaa5-4b57-845d-f7a6a260d3e2" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_21d96403-bc7e-4cc4-a1be-83ca51ec6c54" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_EDCLoanMember_7b14a1c6-c9d0-41d6-9bf5-ad0323a12358" xlink:href="wprt-20250630.xsd#wprt_EDCLoanMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_21d96403-bc7e-4cc4-a1be-83ca51ec6c54" xlink:to="loc_wprt_EDCLoanMember_7b14a1c6-c9d0-41d6-9bf5-ad0323a12358" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentInterestRateEffectivePercentage_eeb04743-b6bb-4603-a1fc-02223ffa7f0e" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtInstrumentInterestRateEffectivePercentage"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_b9f67c5d-190b-4ab0-ae9f-f451a8d3c272" xlink:to="loc_us-gaap_DebtInstrumentInterestRateEffectivePercentage_eeb04743-b6bb-4603-a1fc-02223ffa7f0e" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtAndCapitalLeaseObligations_1c8d8700-dd2c-4679-9f01-dd30fefa4b3b" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtAndCapitalLeaseObligations"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_b9f67c5d-190b-4ab0-ae9f-f451a8d3c272" xlink:to="loc_us-gaap_DebtAndCapitalLeaseObligations_1c8d8700-dd2c-4679-9f01-dd30fefa4b3b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent_ab598184-1be3-4441-ba66-639e0b83a724" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_b9f67c5d-190b-4ab0-ae9f-f451a8d3c272" xlink:to="loc_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent_ab598184-1be3-4441-ba66-639e0b83a724" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtAndCapitalLeaseObligations_eef1e706-0d8a-4322-a180-292e2c99bd82" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligations"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_b9f67c5d-190b-4ab0-ae9f-f451a8d3c272" xlink:to="loc_us-gaap_LongTermDebtAndCapitalLeaseObligations_eef1e706-0d8a-4322-a180-292e2c99bd82" xlink:type="arc" order="3"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.westport.com/role/LongtermdebtNarrativeDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#LongtermdebtNarrativeDetails"/>
  <link:definitionLink xlink:role="http://www.westport.com/role/LongtermdebtNarrativeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentLineItems_3b5f9540-a880-48fd-8ece-406cc87bb69a" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtInstrumentLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTable_e36679fe-0a80-4f47-bad3-3d972f72a53a" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtInstrumentTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DebtInstrumentLineItems_3b5f9540-a880-48fd-8ece-406cc87bb69a" xlink:to="loc_us-gaap_DebtInstrumentTable_e36679fe-0a80-4f47-bad3-3d972f72a53a" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityAxis_b34a2edc-095c-4fa8-bc4e-fa1d4c3ca8c8" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CreditFacilityAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_e36679fe-0a80-4f47-bad3-3d972f72a53a" xlink:to="loc_us-gaap_CreditFacilityAxis_b34a2edc-095c-4fa8-bc4e-fa1d4c3ca8c8" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_b34a2edc-095c-4fa8-bc4e-fa1d4c3ca8c8_default" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CreditFacilityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_CreditFacilityAxis_b34a2edc-095c-4fa8-bc4e-fa1d4c3ca8c8" xlink:to="loc_us-gaap_CreditFacilityDomain_b34a2edc-095c-4fa8-bc4e-fa1d4c3ca8c8_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_51e78043-1953-49e3-b3bb-afc0138d7c29" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CreditFacilityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_CreditFacilityAxis_b34a2edc-095c-4fa8-bc4e-fa1d4c3ca8c8" xlink:to="loc_us-gaap_CreditFacilityDomain_51e78043-1953-49e3-b3bb-afc0138d7c29" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SecuredDebtMember_3b7f001e-de77-4e11-9ecb-ebeeafab9deb" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SecuredDebtMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CreditFacilityDomain_51e78043-1953-49e3-b3bb-afc0138d7c29" xlink:to="loc_us-gaap_SecuredDebtMember_3b7f001e-de77-4e11-9ecb-ebeeafab9deb" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_3a88df7d-a5d0-4e21-943e-37c70f03562b" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_e36679fe-0a80-4f47-bad3-3d972f72a53a" xlink:to="loc_us-gaap_DebtInstrumentAxis_3a88df7d-a5d0-4e21-943e-37c70f03562b" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_3a88df7d-a5d0-4e21-943e-37c70f03562b_default" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DebtInstrumentAxis_3a88df7d-a5d0-4e21-943e-37c70f03562b" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_3a88df7d-a5d0-4e21-943e-37c70f03562b_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_2ef6b223-849e-42b5-ba64-81ed8e581d3a" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DebtInstrumentAxis_3a88df7d-a5d0-4e21-943e-37c70f03562b" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_2ef6b223-849e-42b5-ba64-81ed8e581d3a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_EDCLoanMember_49f1a057-aa18-4e0b-84a4-0a57b31b9b2c" xlink:href="wprt-20250630.xsd#wprt_EDCLoanMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_2ef6b223-849e-42b5-ba64-81ed8e581d3a" xlink:to="loc_wprt_EDCLoanMember_49f1a057-aa18-4e0b-84a4-0a57b31b9b2c" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentFaceAmount_3b83d0b5-22b7-438e-b817-af5e43bf6a16" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtInstrumentFaceAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_3b5f9540-a880-48fd-8ece-406cc87bb69a" xlink:to="loc_us-gaap_DebtInstrumentFaceAmount_3b83d0b5-22b7-438e-b817-af5e43bf6a16" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.westport.com/role/LongtermdebtScheduleofMaturitiesonSeniorFinancingDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#LongtermdebtScheduleofMaturitiesonSeniorFinancingDetails"/>
  <link:definitionLink xlink:role="http://www.westport.com/role/LongtermdebtScheduleofMaturitiesonSeniorFinancingDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentLineItems_11a4ad87-e0ea-4c2f-85dc-7fc538efb709" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtInstrumentLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTable_bb9a2cae-b34d-4432-974e-25c4f84b1628" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtInstrumentTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DebtInstrumentLineItems_11a4ad87-e0ea-4c2f-85dc-7fc538efb709" xlink:to="loc_us-gaap_DebtInstrumentTable_bb9a2cae-b34d-4432-974e-25c4f84b1628" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityAxis_e7e93ae1-d9fc-44f3-a9e9-12580df06080" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CreditFacilityAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_bb9a2cae-b34d-4432-974e-25c4f84b1628" xlink:to="loc_us-gaap_CreditFacilityAxis_e7e93ae1-d9fc-44f3-a9e9-12580df06080" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_e7e93ae1-d9fc-44f3-a9e9-12580df06080_default" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CreditFacilityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_CreditFacilityAxis_e7e93ae1-d9fc-44f3-a9e9-12580df06080" xlink:to="loc_us-gaap_CreditFacilityDomain_e7e93ae1-d9fc-44f3-a9e9-12580df06080_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_119b9898-a015-4361-b7c9-3a156c4833c7" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CreditFacilityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_CreditFacilityAxis_e7e93ae1-d9fc-44f3-a9e9-12580df06080" xlink:to="loc_us-gaap_CreditFacilityDomain_119b9898-a015-4361-b7c9-3a156c4833c7" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SecuredDebtMember_e7948c25-cc8c-409a-b31e-4b2d66163d5b" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SecuredDebtMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CreditFacilityDomain_119b9898-a015-4361-b7c9-3a156c4833c7" xlink:to="loc_us-gaap_SecuredDebtMember_e7948c25-cc8c-409a-b31e-4b2d66163d5b" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear_5a33c8ea-90db-42c2-8970-6d1a64e4bd68" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_11a4ad87-e0ea-4c2f-85dc-7fc538efb709" xlink:to="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear_5a33c8ea-90db-42c2-8970-6d1a64e4bd68" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_b887a129-2b45-4cb2-8894-6192dc96c857" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_11a4ad87-e0ea-4c2f-85dc-7fc538efb709" xlink:to="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_b887a129-2b45-4cb2-8894-6192dc96c857" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentCarryingAmount_b38bc647-5692-454c-b3d9-083ecdc83a13" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtInstrumentCarryingAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_11a4ad87-e0ea-4c2f-85dc-7fc538efb709" xlink:to="loc_us-gaap_DebtInstrumentCarryingAmount_b38bc647-5692-454c-b3d9-083ecdc83a13" xlink:type="arc" order="2"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansNarrativeDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#SharecapitalstockoptionsandotherstockbasedplansNarrativeDetails"/>
  <link:definitionLink xlink:role="http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansNarrativeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_e2441473-4043-48fd-86ce-60a684a00d0e" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_12168e73-8564-40e5-80e6-fde314ecfab8" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_e2441473-4043-48fd-86ce-60a684a00d0e" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_12168e73-8564-40e5-80e6-fde314ecfab8" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_8f105300-41ef-4ced-a64b-526208d3c335" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AwardTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_12168e73-8564-40e5-80e6-fde314ecfab8" xlink:to="loc_us-gaap_AwardTypeAxis_8f105300-41ef-4ced-a64b-526208d3c335" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_8f105300-41ef-4ced-a64b-526208d3c335_default" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_8f105300-41ef-4ced-a64b-526208d3c335" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_8f105300-41ef-4ced-a64b-526208d3c335_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_735d1167-683d-4d85-aeb2-55d2f473e90f" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_8f105300-41ef-4ced-a64b-526208d3c335" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_735d1167-683d-4d85-aeb2-55d2f473e90f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ShareUnitsMember_489ffc74-37fd-46f3-bb00-6ce7cb68ff73" xlink:href="wprt-20250630.xsd#wprt_ShareUnitsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_735d1167-683d-4d85-aeb2-55d2f473e90f" xlink:to="loc_wprt_ShareUnitsMember_489ffc74-37fd-46f3-bb00-6ce7cb68ff73" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember_bfbda74e-fc19-4dec-a254-c8bf7390b43c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RestrictedStockUnitsRSUMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_735d1167-683d-4d85-aeb2-55d2f473e90f" xlink:to="loc_us-gaap_RestrictedStockUnitsRSUMember_bfbda74e-fc19-4dec-a254-c8bf7390b43c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_PerformanceStockUnitsMember_a6be4245-802f-4339-b900-727f0974c409" xlink:href="wprt-20250630.xsd#wprt_PerformanceStockUnitsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_735d1167-683d-4d85-aeb2-55d2f473e90f" xlink:to="loc_wprt_PerformanceStockUnitsMember_a6be4245-802f-4339-b900-727f0974c409" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DeferredShareUnitsMember_78c8b5ec-2697-455d-87bd-29f24d1307ba" xlink:href="wprt-20250630.xsd#wprt_DeferredShareUnitsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_735d1167-683d-4d85-aeb2-55d2f473e90f" xlink:to="loc_wprt_DeferredShareUnitsMember_78c8b5ec-2697-455d-87bd-29f24d1307ba" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_ab193fa2-abd3-421c-a7fc-4b17779712b4" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_12168e73-8564-40e5-80e6-fde314ecfab8" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_ab193fa2-abd3-421c-a7fc-4b17779712b4" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_ab193fa2-abd3-421c-a7fc-4b17779712b4_default" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EquityComponentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_ab193fa2-abd3-421c-a7fc-4b17779712b4" xlink:to="loc_us-gaap_EquityComponentDomain_ab193fa2-abd3-421c-a7fc-4b17779712b4_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_09e8649c-428b-4ba1-a8d5-874f212725f4" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EquityComponentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_ab193fa2-abd3-421c-a7fc-4b17779712b4" xlink:to="loc_us-gaap_EquityComponentDomain_09e8649c-428b-4ba1-a8d5-874f212725f4" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember_f9554ce0-5ecd-4fbc-b615-9af5122f4cad" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommonStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_09e8649c-428b-4ba1-a8d5-874f212725f4" xlink:to="loc_us-gaap_CommonStockMember_f9554ce0-5ecd-4fbc-b615-9af5122f4cad" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_5af5f7f1-bff2-453a-b99f-9f02b5179114" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_e2441473-4043-48fd-86ce-60a684a00d0e" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_5af5f7f1-bff2-453a-b99f-9f02b5179114" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpense_21303c16-01f4-47b9-9279-54a2f4797987" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AllocatedShareBasedCompensationExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_e2441473-4043-48fd-86ce-60a684a00d0e" xlink:to="loc_us-gaap_AllocatedShareBasedCompensationExpense_21303c16-01f4-47b9-9279-54a2f4797987" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted_d491fb96-21f8-42de-9edd-255b4bfad62e" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_e2441473-4043-48fd-86ce-60a684a00d0e" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted_d491fb96-21f8-42de-9edd-255b4bfad62e" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_f6fde20f-1441-47e2-af60-c029c6738d72" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_e2441473-4043-48fd-86ce-60a684a00d0e" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_f6fde20f-1441-47e2-af60-c029c6738d72" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_e8eec366-f74e-4836-9563-fe598af76b15" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_e2441473-4043-48fd-86ce-60a684a00d0e" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_e8eec366-f74e-4836-9563-fe598af76b15" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_51268d28-e7f2-422e-8a7a-c1d2daa4d83b" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_e2441473-4043-48fd-86ce-60a684a00d0e" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_51268d28-e7f2-422e-8a7a-c1d2daa4d83b" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ShareBasedPaymentArrangementExpenseSettledInShares_582efc83-1728-41f1-b252-a8550cfe47d2" xlink:href="wprt-20250630.xsd#wprt_ShareBasedPaymentArrangementExpenseSettledInShares"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_e2441473-4043-48fd-86ce-60a684a00d0e" xlink:to="loc_wprt_ShareBasedPaymentArrangementExpenseSettledInShares_582efc83-1728-41f1-b252-a8550cfe47d2" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ShareBasedPaymentArrangementExpenseSettledInCash_34abdcad-67cd-4d6d-ac9b-3d8ac0c2d844" xlink:href="wprt-20250630.xsd#wprt_ShareBasedPaymentArrangementExpenseSettledInCash"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_e2441473-4043-48fd-86ce-60a684a00d0e" xlink:to="loc_wprt_ShareBasedPaymentArrangementExpenseSettledInCash_34abdcad-67cd-4d6d-ac9b-3d8ac0c2d844" xlink:type="arc" order="7"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansShareunitsDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#SharecapitalstockoptionsandotherstockbasedplansShareunitsDetails"/>
  <link:definitionLink xlink:role="http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansShareunitsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7b0f736b-f496-46f0-a5d7-503f0173ce2e" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_27af421a-a659-4459-b35f-cd7d30fe1eba" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7b0f736b-f496-46f0-a5d7-503f0173ce2e" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_27af421a-a659-4459-b35f-cd7d30fe1eba" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_64e2778d-a4d5-4948-9034-d5a492eaaf5b" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AwardTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_27af421a-a659-4459-b35f-cd7d30fe1eba" xlink:to="loc_us-gaap_AwardTypeAxis_64e2778d-a4d5-4948-9034-d5a492eaaf5b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_64e2778d-a4d5-4948-9034-d5a492eaaf5b_default" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_64e2778d-a4d5-4948-9034-d5a492eaaf5b" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_64e2778d-a4d5-4948-9034-d5a492eaaf5b_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_e0bbf12a-3abd-490c-b97e-df5608ed1480" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_64e2778d-a4d5-4948-9034-d5a492eaaf5b" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_e0bbf12a-3abd-490c-b97e-df5608ed1480" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ShareUnitsMember_c021aaad-4b4a-479f-8370-3400d6cef100" xlink:href="wprt-20250630.xsd#wprt_ShareUnitsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_e0bbf12a-3abd-490c-b97e-df5608ed1480" xlink:to="loc_wprt_ShareUnitsMember_c021aaad-4b4a-479f-8370-3400d6cef100" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_2c3ff626-8d1f-44d8-91f2-23ebb2e92e93" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7b0f736b-f496-46f0-a5d7-503f0173ce2e" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_2c3ff626-8d1f-44d8-91f2-23ebb2e92e93" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_4a546820-25f6-4772-ae4f-8bfa62b449b2" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_2c3ff626-8d1f-44d8-91f2-23ebb2e92e93" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_4a546820-25f6-4772-ae4f-8bfa62b449b2" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted_8bc56093-4e07-414e-b69d-c3953260bb39" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_2c3ff626-8d1f-44d8-91f2-23ebb2e92e93" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted_8bc56093-4e07-414e-b69d-c3953260bb39" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised_1d5a54c1-0d77-41fb-ac2f-de6f231a23f8" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_2c3ff626-8d1f-44d8-91f2-23ebb2e92e93" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised_1d5a54c1-0d77-41fb-ac2f-de6f231a23f8" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirations_2fee974c-32dd-463c-ad1b-a703cf10255c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirations"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_2c3ff626-8d1f-44d8-91f2-23ebb2e92e93" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirations_2fee974c-32dd-463c-ad1b-a703cf10255c" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_76df3efd-d81b-44cc-8681-589062aa0550" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingAndExercisableNumber_828d60f6-0aed-48f0-a448-9d1159f6f5ee" xlink:href="wprt-20250630.xsd#wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingAndExercisableNumber"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7b0f736b-f496-46f0-a5d7-503f0173ce2e" xlink:to="loc_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingAndExercisableNumber_828d60f6-0aed-48f0-a448-9d1159f6f5ee" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_cd47e7be-a535-499f-a34b-1870b56364f4" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7b0f736b-f496-46f0-a5d7-503f0173ce2e" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_cd47e7be-a535-499f-a34b-1870b56364f4" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingWeightedAverageGrantDateFairValue_18ebbaa5-7355-4077-847c-0f6fe12a6a62" xlink:href="wprt-20250630.xsd#wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingWeightedAverageGrantDateFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_cd47e7be-a535-499f-a34b-1870b56364f4" xlink:to="loc_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingWeightedAverageGrantDateFairValue_18ebbaa5-7355-4077-847c-0f6fe12a6a62" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGrantedWeightedAverageGrantDateFairValue_eb342cf1-d9b0-4e9c-8b42-65eee785b961" xlink:href="wprt-20250630.xsd#wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGrantedWeightedAverageGrantDateFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_cd47e7be-a535-499f-a34b-1870b56364f4" xlink:to="loc_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGrantedWeightedAverageGrantDateFairValue_eb342cf1-d9b0-4e9c-8b42-65eee785b961" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercisedWeightedAverageGrantDateFairValue_2efbf8b9-6d8e-4deb-a481-ac0e3d528ad9" xlink:href="wprt-20250630.xsd#wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercisedWeightedAverageGrantDateFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_cd47e7be-a535-499f-a34b-1870b56364f4" xlink:to="loc_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercisedWeightedAverageGrantDateFairValue_2efbf8b9-6d8e-4deb-a481-ac0e3d528ad9" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirationsWeightedAverageGrantDateFairValue_767e5c8e-f728-46a3-b320-1b66c8d5736b" xlink:href="wprt-20250630.xsd#wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirationsWeightedAverageGrantDateFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_cd47e7be-a535-499f-a34b-1870b56364f4" xlink:to="loc_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirationsWeightedAverageGrantDateFairValue_767e5c8e-f728-46a3-b320-1b66c8d5736b" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingWeightedAverageGrantDateFairValue_d8bbfb67-c6f8-40b9-977f-4613e7db019a" xlink:href="wprt-20250630.xsd#wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingWeightedAverageGrantDateFairValue"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingAndExercisableWeightedAverageGrantDateFairValue_d249bad4-aac2-48fc-8e6c-f114b8335db4" xlink:href="wprt-20250630.xsd#wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingAndExercisableWeightedAverageGrantDateFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7b0f736b-f496-46f0-a5d7-503f0173ce2e" xlink:to="loc_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingAndExercisableWeightedAverageGrantDateFairValue_d249bad4-aac2-48fc-8e6c-f114b8335db4" xlink:type="arc" order="3"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansAggregateintrinsicvaluesDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#SharecapitalstockoptionsandotherstockbasedplansAggregateintrinsicvaluesDetails"/>
  <link:definitionLink xlink:role="http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansAggregateintrinsicvaluesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_3f48ab5f-c85f-4890-9d4c-3ab8b4ef310a" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_6051fc3f-05f6-43a5-9683-84a73fb11b45" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_3f48ab5f-c85f-4890-9d4c-3ab8b4ef310a" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_6051fc3f-05f6-43a5-9683-84a73fb11b45" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_9777177b-72ca-43ca-bc4b-c90a5837bdf2" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AwardTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_6051fc3f-05f6-43a5-9683-84a73fb11b45" xlink:to="loc_us-gaap_AwardTypeAxis_9777177b-72ca-43ca-bc4b-c90a5837bdf2" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_9777177b-72ca-43ca-bc4b-c90a5837bdf2_default" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_9777177b-72ca-43ca-bc4b-c90a5837bdf2" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_9777177b-72ca-43ca-bc4b-c90a5837bdf2_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_f9b364e0-1528-47b4-b80a-4bf4e22e5bc4" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_9777177b-72ca-43ca-bc4b-c90a5837bdf2" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_f9b364e0-1528-47b4-b80a-4bf4e22e5bc4" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ShareUnitsMember_e5afcf0b-a6f2-4c88-8ee9-7ed4ac2c3f6a" xlink:href="wprt-20250630.xsd#wprt_ShareUnitsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_f9b364e0-1528-47b4-b80a-4bf4e22e5bc4" xlink:to="loc_wprt_ShareUnitsMember_e5afcf0b-a6f2-4c88-8ee9-7ed4ac2c3f6a" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_44913ce3-43e8-48db-86d7-049b9cecb070" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_3f48ab5f-c85f-4890-9d4c-3ab8b4ef310a" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_44913ce3-43e8-48db-86d7-049b9cecb070" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_3c99f5ec-2c95-40bf-958c-c606a2c93fc3" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_3f48ab5f-c85f-4890-9d4c-3ab8b4ef310a" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_3c99f5ec-2c95-40bf-958c-c606a2c93fc3" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_9322af60-1f4e-45e1-b8fc-3bfe1b95253f" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_3f48ab5f-c85f-4890-9d4c-3ab8b4ef310a" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_9322af60-1f4e-45e1-b8fc-3bfe1b95253f" xlink:type="arc" order="2"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansStockbasedcompensationDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#SharecapitalstockoptionsandotherstockbasedplansStockbasedcompensationDetails"/>
  <link:definitionLink xlink:role="http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansStockbasedcompensationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_a85e887e-6c93-4250-8f45-bb62d23c7a62" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_91e3d743-35d1-453c-81b7-1c0414badf41" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_a85e887e-6c93-4250-8f45-bb62d23c7a62" xlink:to="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_91e3d743-35d1-453c-81b7-1c0414badf41" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_435a129b-9590-4103-93e1-104a73e4fbe6" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeStatementLocationAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_91e3d743-35d1-453c-81b7-1c0414badf41" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_435a129b-9590-4103-93e1-104a73e4fbe6" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_435a129b-9590-4103-93e1-104a73e4fbe6_default" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_435a129b-9590-4103-93e1-104a73e4fbe6" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_435a129b-9590-4103-93e1-104a73e4fbe6_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_b5dafe75-fa47-44ef-be7e-6601126ea994" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_435a129b-9590-4103-93e1-104a73e4fbe6" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_b5dafe75-fa47-44ef-be7e-6601126ea994" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfSalesMember_aff68711-8482-44d9-8d59-274dd377e105" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CostOfSalesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_b5dafe75-fa47-44ef-be7e-6601126ea994" xlink:to="loc_us-gaap_CostOfSalesMember_aff68711-8482-44d9-8d59-274dd377e105" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpenseMember_f74904cc-ed65-4f6d-a505-5bd77719d24f" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ResearchAndDevelopmentExpenseMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_b5dafe75-fa47-44ef-be7e-6601126ea994" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpenseMember_f74904cc-ed65-4f6d-a505-5bd77719d24f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpenseMember_e78bb957-2cad-4121-acd0-1db2782fa557" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_GeneralAndAdministrativeExpenseMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_b5dafe75-fa47-44ef-be7e-6601126ea994" xlink:to="loc_us-gaap_GeneralAndAdministrativeExpenseMember_e78bb957-2cad-4121-acd0-1db2782fa557" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingAndMarketingExpenseMember_30f835d1-736c-47cf-9771-529035d01a5e" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SellingAndMarketingExpenseMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_b5dafe75-fa47-44ef-be7e-6601126ea994" xlink:to="loc_us-gaap_SellingAndMarketingExpenseMember_30f835d1-736c-47cf-9771-529035d01a5e" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpense_8785fe02-1881-426c-88d0-dd3dc527c641" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AllocatedShareBasedCompensationExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_a85e887e-6c93-4250-8f45-bb62d23c7a62" xlink:to="loc_us-gaap_AllocatedShareBasedCompensationExpense_8785fe02-1881-426c-88d0-dd3dc527c641" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.westport.com/role/RelatedpartytransactionsDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#RelatedpartytransactionsDetails"/>
  <link:definitionLink xlink:role="http://www.westport.com/role/RelatedpartytransactionsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionLineItems_cf218094-9025-4f72-b7f8-ba3ebcb1a9fb" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RelatedPartyTransactionLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable_21cac540-05d9-40db-8697-1bfd584b5ba7" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_RelatedPartyTransactionLineItems_cf218094-9025-4f72-b7f8-ba3ebcb1a9fb" xlink:to="loc_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable_21cac540-05d9-40db-8697-1bfd584b5ba7" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_d4027919-4530-4d60-b553-4b28ac80e290" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable_21cac540-05d9-40db-8697-1bfd584b5ba7" xlink:to="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_d4027919-4530-4d60-b553-4b28ac80e290" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyDomain_d4027919-4530-4d60-b553-4b28ac80e290_default" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RelatedPartyDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_d4027919-4530-4d60-b553-4b28ac80e290" xlink:to="loc_us-gaap_RelatedPartyDomain_d4027919-4530-4d60-b553-4b28ac80e290_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyDomain_bc48d66b-81b9-4602-b334-1aabcc773674" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RelatedPartyDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_d4027919-4530-4d60-b553-4b28ac80e290" xlink:to="loc_us-gaap_RelatedPartyDomain_bc48d66b-81b9-4602-b334-1aabcc773674" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_CespiraMember_2cf001fc-1422-453e-9ffa-6ea556e98ab5" xlink:href="wprt-20250630.xsd#wprt_CespiraMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RelatedPartyDomain_bc48d66b-81b9-4602-b334-1aabcc773674" xlink:to="loc_wprt_CespiraMember_2cf001fc-1422-453e-9ffa-6ea556e98ab5" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionAxis_3c3c2f95-6d2e-4720-9fb6-5c21256081f1" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RelatedPartyTransactionAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable_21cac540-05d9-40db-8697-1bfd584b5ba7" xlink:to="loc_us-gaap_RelatedPartyTransactionAxis_3c3c2f95-6d2e-4720-9fb6-5c21256081f1" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionDomain_3c3c2f95-6d2e-4720-9fb6-5c21256081f1_default" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RelatedPartyTransactionDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_RelatedPartyTransactionAxis_3c3c2f95-6d2e-4720-9fb6-5c21256081f1" xlink:to="loc_us-gaap_RelatedPartyTransactionDomain_3c3c2f95-6d2e-4720-9fb6-5c21256081f1_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionDomain_2aadda4a-6448-4ff0-b1af-d6d164783eab" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RelatedPartyTransactionDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_RelatedPartyTransactionAxis_3c3c2f95-6d2e-4720-9fb6-5c21256081f1" xlink:to="loc_us-gaap_RelatedPartyTransactionDomain_2aadda4a-6448-4ff0-b1af-d6d164783eab" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_SalesOfGoodsServicesAndOtherIncomeMember_b9aad691-66f7-4a01-ac77-dbb3063ae68b" xlink:href="wprt-20250630.xsd#wprt_SalesOfGoodsServicesAndOtherIncomeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RelatedPartyTransactionDomain_2aadda4a-6448-4ff0-b1af-d6d164783eab" xlink:to="loc_wprt_SalesOfGoodsServicesAndOtherIncomeMember_b9aad691-66f7-4a01-ac77-dbb3063ae68b" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_InventoryPurchasedServicesAndOtherExpensesMember_1bcfe47a-8471-4c80-9d87-f8ce19691a95" xlink:href="wprt-20250630.xsd#wprt_InventoryPurchasedServicesAndOtherExpensesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RelatedPartyTransactionDomain_2aadda4a-6448-4ff0-b1af-d6d164783eab" xlink:to="loc_wprt_InventoryPurchasedServicesAndOtherExpensesMember_1bcfe47a-8471-4c80-9d87-f8ce19691a95" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionAmountsOfTransaction_14030f39-0886-44f3-bb65-73c74b6d7e73" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RelatedPartyTransactionAmountsOfTransaction"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RelatedPartyTransactionLineItems_cf218094-9025-4f72-b7f8-ba3ebcb1a9fb" xlink:to="loc_us-gaap_RelatedPartyTransactionAmountsOfTransaction_14030f39-0886-44f3-bb65-73c74b6d7e73" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherReceivablesNetCurrent_fafac8de-c1b2-487d-9d10-2b15ebe1b566" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherReceivablesNetCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RelatedPartyTransactionLineItems_cf218094-9025-4f72-b7f8-ba3ebcb1a9fb" xlink:to="loc_us-gaap_OtherReceivablesNetCurrent_fafac8de-c1b2-487d-9d10-2b15ebe1b566" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableCurrentAndNoncurrent_c6a1d925-34d1-4b2d-a05d-9c67cfd30c56" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountsPayableCurrentAndNoncurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RelatedPartyTransactionLineItems_cf218094-9025-4f72-b7f8-ba3ebcb1a9fb" xlink:to="loc_us-gaap_AccountsPayableCurrentAndNoncurrent_c6a1d925-34d1-4b2d-a05d-9c67cfd30c56" xlink:type="arc" order="2"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.westport.com/role/SegmentinformationNarrativeDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#SegmentinformationNarrativeDetails"/>
  <link:definitionLink xlink:role="http://www.westport.com/role/SegmentinformationNarrativeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingInformationLineItems_61e6c65c-7f7a-402b-b795-f9ee5921fa70" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SegmentReportingInformationLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_db34f3ae-129d-4b69-a1a6-b79f11521d19" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_61e6c65c-7f7a-402b-b795-f9ee5921fa70" xlink:to="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_db34f3ae-129d-4b69-a1a6-b79f11521d19" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_0def751d-0f05-43a7-9dec-2021102e2e3b" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_db34f3ae-129d-4b69-a1a6-b79f11521d19" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_0def751d-0f05-43a7-9dec-2021102e2e3b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_0def751d-0f05-43a7-9dec-2021102e2e3b_default" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_0def751d-0f05-43a7-9dec-2021102e2e3b" xlink:to="loc_us-gaap_SegmentDomain_0def751d-0f05-43a7-9dec-2021102e2e3b_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_0c3ed555-dee3-4aad-91ea-9021b00e37d2" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_0def751d-0f05-43a7-9dec-2021102e2e3b" xlink:to="loc_us-gaap_SegmentDomain_0c3ed555-dee3-4aad-91ea-9021b00e37d2" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_CespiraMember_8f6d9a2b-2a08-44b5-bbfb-44a0cc9e900d" xlink:href="wprt-20250630.xsd#wprt_CespiraMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_0c3ed555-dee3-4aad-91ea-9021b00e37d2" xlink:to="loc_wprt_CespiraMember_8f6d9a2b-2a08-44b5-bbfb-44a0cc9e900d" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsAxis_5ecc9f9f-d1e1-4ceb-af0c-c299772ef1ff" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ConsolidationItemsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_db34f3ae-129d-4b69-a1a6-b79f11521d19" xlink:to="loc_srt_ConsolidationItemsAxis_5ecc9f9f-d1e1-4ceb-af0c-c299772ef1ff" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsDomain_5ecc9f9f-d1e1-4ceb-af0c-c299772ef1ff_default" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ConsolidationItemsDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ConsolidationItemsAxis_5ecc9f9f-d1e1-4ceb-af0c-c299772ef1ff" xlink:to="loc_srt_ConsolidationItemsDomain_5ecc9f9f-d1e1-4ceb-af0c-c299772ef1ff_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsDomain_6d5ed13c-053c-4d6a-a42d-8351a5a55178" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ConsolidationItemsDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ConsolidationItemsAxis_5ecc9f9f-d1e1-4ceb-af0c-c299772ef1ff" xlink:to="loc_srt_ConsolidationItemsDomain_6d5ed13c-053c-4d6a-a42d-8351a5a55178" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingSegmentsMember_7f1f065b-a85c-4723-8418-a92a17eb9392" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OperatingSegmentsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ConsolidationItemsDomain_6d5ed13c-053c-4d6a-a42d-8351a5a55178" xlink:to="loc_us-gaap_OperatingSegmentsMember_7f1f065b-a85c-4723-8418-a92a17eb9392" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NumberOfReportableSegments_972df2a3-326c-4f33-8dd4-a766247bf08e" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NumberOfReportableSegments"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_61e6c65c-7f7a-402b-b795-f9ee5921fa70" xlink:to="loc_us-gaap_NumberOfReportableSegments_972df2a3-326c-4f33-8dd4-a766247bf08e" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentExpenditureAdditionToLongLivedAssets_b0a36674-f443-43c9-8ca2-2db9410ebe30" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SegmentExpenditureAdditionToLongLivedAssets"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_61e6c65c-7f7a-402b-b795-f9ee5921fa70" xlink:to="loc_us-gaap_SegmentExpenditureAdditionToLongLivedAssets_b0a36674-f443-43c9-8ca2-2db9410ebe30" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.westport.com/role/SegmentinformationFinancialinformationbybusinesssegmentDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#SegmentinformationFinancialinformationbybusinesssegmentDetails"/>
  <link:definitionLink xlink:role="http://www.westport.com/role/SegmentinformationFinancialinformationbybusinesssegmentDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingInformationLineItems_1afc9983-03f9-400f-a2cc-1e3f32e5f554" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SegmentReportingInformationLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_dbc37370-0685-43e9-ad2a-31140a2d3b59" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_1afc9983-03f9-400f-a2cc-1e3f32e5f554" xlink:to="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_dbc37370-0685-43e9-ad2a-31140a2d3b59" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsAxis_7c97994c-645c-440f-92c6-3821b72f8caa" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ConsolidationItemsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_dbc37370-0685-43e9-ad2a-31140a2d3b59" xlink:to="loc_srt_ConsolidationItemsAxis_7c97994c-645c-440f-92c6-3821b72f8caa" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsDomain_7c97994c-645c-440f-92c6-3821b72f8caa_default" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ConsolidationItemsDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ConsolidationItemsAxis_7c97994c-645c-440f-92c6-3821b72f8caa" xlink:to="loc_srt_ConsolidationItemsDomain_7c97994c-645c-440f-92c6-3821b72f8caa_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsDomain_e85812a7-ec1f-4c58-8b47-869da130aed8" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ConsolidationItemsDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ConsolidationItemsAxis_7c97994c-645c-440f-92c6-3821b72f8caa" xlink:to="loc_srt_ConsolidationItemsDomain_e85812a7-ec1f-4c58-8b47-869da130aed8" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingSegmentsMember_d9c15695-0a07-4c7b-bb50-87e0ce4fc6ef" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OperatingSegmentsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ConsolidationItemsDomain_e85812a7-ec1f-4c58-8b47-869da130aed8" xlink:to="loc_us-gaap_OperatingSegmentsMember_d9c15695-0a07-4c7b-bb50-87e0ce4fc6ef" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationEliminationsMember_015a6671-fa07-4109-9777-20a55f4623c6" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ConsolidationEliminationsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ConsolidationItemsDomain_e85812a7-ec1f-4c58-8b47-869da130aed8" xlink:to="loc_srt_ConsolidationEliminationsMember_015a6671-fa07-4109-9777-20a55f4623c6" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CorporateNonSegmentMember_7770d841-85e5-44bc-aa97-4050acea2b2a" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CorporateNonSegmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ConsolidationItemsDomain_e85812a7-ec1f-4c58-8b47-869da130aed8" xlink:to="loc_us-gaap_CorporateNonSegmentMember_7770d841-85e5-44bc-aa97-4050acea2b2a" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_a381a539-3624-4051-a67f-6862e02c8d27" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_dbc37370-0685-43e9-ad2a-31140a2d3b59" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_a381a539-3624-4051-a67f-6862e02c8d27" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_a381a539-3624-4051-a67f-6862e02c8d27_default" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_a381a539-3624-4051-a67f-6862e02c8d27" xlink:to="loc_us-gaap_SegmentDomain_a381a539-3624-4051-a67f-6862e02c8d27_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_fbcd899f-85fc-48b4-af80-dfebe913835a" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_a381a539-3624-4051-a67f-6862e02c8d27" xlink:to="loc_us-gaap_SegmentDomain_fbcd899f-85fc-48b4-af80-dfebe913835a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_HighPressureControlsSystemsMember_849708cd-a09d-4703-95ec-a787c208825f" xlink:href="wprt-20250630.xsd#wprt_HighPressureControlsSystemsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_fbcd899f-85fc-48b4-af80-dfebe913835a" xlink:to="loc_wprt_HighPressureControlsSystemsMember_849708cd-a09d-4703-95ec-a787c208825f" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_HeavyDutyOEMMember_8efedf43-53e9-42b5-a972-7a5820f4205d" xlink:href="wprt-20250630.xsd#wprt_HeavyDutyOEMMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_fbcd899f-85fc-48b4-af80-dfebe913835a" xlink:to="loc_wprt_HeavyDutyOEMMember_8efedf43-53e9-42b5-a972-7a5820f4205d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_CespiraMember_23cfb150-7c03-41b4-9df2-79fe7c3e4fcd" xlink:href="wprt-20250630.xsd#wprt_CespiraMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_fbcd899f-85fc-48b4-af80-dfebe913835a" xlink:to="loc_wprt_CespiraMember_23cfb150-7c03-41b4-9df2-79fe7c3e4fcd" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_c9445d8c-1017-4cb3-9975-9477d04d6937" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_1afc9983-03f9-400f-a2cc-1e3f32e5f554" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_c9445d8c-1017-4cb3-9975-9477d04d6937" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold_c4dfcf60-fce1-48b2-90f5-b62737a9ee9a" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CostOfGoodsAndServicesSold"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_1afc9983-03f9-400f-a2cc-1e3f32e5f554" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSold_c4dfcf60-fce1-48b2-90f5-b62737a9ee9a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit_e54686a5-f1ce-4e3b-8d16-228858672892" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_GrossProfit"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_1afc9983-03f9-400f-a2cc-1e3f32e5f554" xlink:to="loc_us-gaap_GrossProfit_e54686a5-f1ce-4e3b-8d16-228858672892" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpense_1ae28d2a-b3db-47bd-9258-2525c9f6b879" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ResearchAndDevelopmentExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_1afc9983-03f9-400f-a2cc-1e3f32e5f554" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpense_1ae28d2a-b3db-47bd-9258-2525c9f6b879" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ResearchAndDevelopmentExpenseAdjustmentForRounding_15cfb953-799b-4425-be92-60c4455b68bf" xlink:href="wprt-20250630.xsd#wprt_ResearchAndDevelopmentExpenseAdjustmentForRounding"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_1afc9983-03f9-400f-a2cc-1e3f32e5f554" xlink:to="loc_wprt_ResearchAndDevelopmentExpenseAdjustmentForRounding_15cfb953-799b-4425-be92-60c4455b68bf" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpense_27522905-9f83-4149-90e5-86a13ae3735e" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_GeneralAndAdministrativeExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_1afc9983-03f9-400f-a2cc-1e3f32e5f554" xlink:to="loc_us-gaap_GeneralAndAdministrativeExpense_27522905-9f83-4149-90e5-86a13ae3735e" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingAndMarketingExpense_dc5acb48-302b-45e2-b797-e5d2ce36a63c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SellingAndMarketingExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_1afc9983-03f9-400f-a2cc-1e3f32e5f554" xlink:to="loc_us-gaap_SellingAndMarketingExpense_dc5acb48-302b-45e2-b797-e5d2ce36a63c" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DepreciationAmortizationAndAccretionNet_324956d6-d0e0-4ba9-a642-be3fcf3a1bdd" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DepreciationAmortizationAndAccretionNet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_1afc9983-03f9-400f-a2cc-1e3f32e5f554" xlink:to="loc_us-gaap_DepreciationAmortizationAndAccretionNet_324956d6-d0e0-4ba9-a642-be3fcf3a1bdd" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingExpenses_99b7c1e9-baf3-4814-9f09-d92093f0c006" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OperatingExpenses"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_1afc9983-03f9-400f-a2cc-1e3f32e5f554" xlink:to="loc_us-gaap_OperatingExpenses_99b7c1e9-baf3-4814-9f09-d92093f0c006" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DepreciationDepletionAndAmortization_1bc5c8b9-270f-4d64-8c7e-e2c497412936" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DepreciationDepletionAndAmortization"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_1afc9983-03f9-400f-a2cc-1e3f32e5f554" xlink:to="loc_us-gaap_DepreciationDepletionAndAmortization_1bc5c8b9-270f-4d64-8c7e-e2c497412936" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_SegmentEarningsBeforeInterestTaxDepreciationAndAmortization_d9ed33ff-878a-43d8-9171-f521b989e131" xlink:href="wprt-20250630.xsd#wprt_SegmentEarningsBeforeInterestTaxDepreciationAndAmortization"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_1afc9983-03f9-400f-a2cc-1e3f32e5f554" xlink:to="loc_wprt_SegmentEarningsBeforeInterestTaxDepreciationAndAmortization_d9ed33ff-878a-43d8-9171-f521b989e131" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromEquityMethodInvestments_36b9c3b5-864f-45a6-8e97-af8b54cc1dce" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeLossFromEquityMethodInvestments"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_1afc9983-03f9-400f-a2cc-1e3f32e5f554" xlink:to="loc_us-gaap_IncomeLossFromEquityMethodInvestments_36b9c3b5-864f-45a6-8e97-af8b54cc1dce" xlink:type="arc" order="11"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.westport.com/role/SegmentInformationReconciliationofSegmentEBITDAtoLossbeforeincometaxesDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#SegmentInformationReconciliationofSegmentEBITDAtoLossbeforeincometaxesDetails"/>
  <link:definitionLink xlink:role="http://www.westport.com/role/SegmentInformationReconciliationofSegmentEBITDAtoLossbeforeincometaxesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingInformationLineItems_5efe7d8a-a3e5-4a37-a48e-fbd27716c674" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SegmentReportingInformationLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_858ae511-c8f7-4d66-82b3-4325bd62aea6" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_5efe7d8a-a3e5-4a37-a48e-fbd27716c674" xlink:to="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_858ae511-c8f7-4d66-82b3-4325bd62aea6" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsAxis_37a50868-f9f7-433f-8585-f69234f6a8f7" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ConsolidationItemsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_858ae511-c8f7-4d66-82b3-4325bd62aea6" xlink:to="loc_srt_ConsolidationItemsAxis_37a50868-f9f7-433f-8585-f69234f6a8f7" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsDomain_37a50868-f9f7-433f-8585-f69234f6a8f7_default" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ConsolidationItemsDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ConsolidationItemsAxis_37a50868-f9f7-433f-8585-f69234f6a8f7" xlink:to="loc_srt_ConsolidationItemsDomain_37a50868-f9f7-433f-8585-f69234f6a8f7_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsDomain_539efb8b-9527-4a54-9381-cf6c8397d21f" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ConsolidationItemsDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ConsolidationItemsAxis_37a50868-f9f7-433f-8585-f69234f6a8f7" xlink:to="loc_srt_ConsolidationItemsDomain_539efb8b-9527-4a54-9381-cf6c8397d21f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingSegmentsMember_baa74016-9867-4666-8f2a-ef254ba82313" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OperatingSegmentsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ConsolidationItemsDomain_539efb8b-9527-4a54-9381-cf6c8397d21f" xlink:to="loc_us-gaap_OperatingSegmentsMember_baa74016-9867-4666-8f2a-ef254ba82313" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CorporateNonSegmentMember_35d30746-280e-47bd-83a2-0d4a4ac70f15" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CorporateNonSegmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ConsolidationItemsDomain_539efb8b-9527-4a54-9381-cf6c8397d21f" xlink:to="loc_us-gaap_CorporateNonSegmentMember_35d30746-280e-47bd-83a2-0d4a4ac70f15" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_50c7b691-857b-447c-990a-8d9684d140eb" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_858ae511-c8f7-4d66-82b3-4325bd62aea6" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_50c7b691-857b-447c-990a-8d9684d140eb" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_50c7b691-857b-447c-990a-8d9684d140eb_default" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_50c7b691-857b-447c-990a-8d9684d140eb" xlink:to="loc_us-gaap_SegmentDomain_50c7b691-857b-447c-990a-8d9684d140eb_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_a203b359-f309-45a0-8fa5-657019b706ba" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_50c7b691-857b-447c-990a-8d9684d140eb" xlink:to="loc_us-gaap_SegmentDomain_a203b359-f309-45a0-8fa5-657019b706ba" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_CespiraMember_7a50b96c-cf5d-49b0-abb6-8f81b6b8530a" xlink:href="wprt-20250630.xsd#wprt_CespiraMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_a203b359-f309-45a0-8fa5-657019b706ba" xlink:to="loc_wprt_CespiraMember_7a50b96c-cf5d-49b0-abb6-8f81b6b8530a" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_SegmentEarningsBeforeInterestTaxDepreciationAndAmortization_434a3a56-540d-4d8e-9590-4c0e1dd3bf63" xlink:href="wprt-20250630.xsd#wprt_SegmentEarningsBeforeInterestTaxDepreciationAndAmortization"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_5efe7d8a-a3e5-4a37-a48e-fbd27716c674" xlink:to="loc_wprt_SegmentEarningsBeforeInterestTaxDepreciationAndAmortization_434a3a56-540d-4d8e-9590-4c0e1dd3bf63" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DepreciationDepletionAndAmortizationAdjusted_3ed77a0d-cb6e-4802-bd1a-4ac54a4f4768" xlink:href="wprt-20250630.xsd#wprt_DepreciationDepletionAndAmortizationAdjusted"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_5efe7d8a-a3e5-4a37-a48e-fbd27716c674" xlink:to="loc_wprt_DepreciationDepletionAndAmortizationAdjusted_3ed77a0d-cb6e-4802-bd1a-4ac54a4f4768" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityMethodInvestmentRealizedGainLossOnDisposal_443656f2-f924-460e-92f1-8b29910ddf02" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EquityMethodInvestmentRealizedGainLossOnDisposal"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_5efe7d8a-a3e5-4a37-a48e-fbd27716c674" xlink:to="loc_us-gaap_EquityMethodInvestmentRealizedGainLossOnDisposal_443656f2-f924-460e-92f1-8b29910ddf02" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingCostsAndExpenses_1e7822cc-5a3f-43f5-8840-d51068808d78" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OperatingCostsAndExpenses"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_5efe7d8a-a3e5-4a37-a48e-fbd27716c674" xlink:to="loc_us-gaap_OperatingCostsAndExpenses_1e7822cc-5a3f-43f5-8840-d51068808d78" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_61515282-1ced-46c2-8cc2-2f4742951a6d" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ForeignCurrencyTransactionGainLossBeforeTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_5efe7d8a-a3e5-4a37-a48e-fbd27716c674" xlink:to="loc_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_61515282-1ced-46c2-8cc2-2f4742951a6d" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeconsolidationGainOrLossAmount_a8d01da0-4e4e-491f-9225-26a67e7fcbab" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DeconsolidationGainOrLossAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_5efe7d8a-a3e5-4a37-a48e-fbd27716c674" xlink:to="loc_us-gaap_DeconsolidationGainOrLossAmount_a8d01da0-4e4e-491f-9225-26a67e7fcbab" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestExpenseDebt_0204902a-af63-4b0c-bb9e-6a633a7503a2" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InterestExpenseDebt"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_5efe7d8a-a3e5-4a37-a48e-fbd27716c674" xlink:to="loc_us-gaap_InterestExpenseDebt_0204902a-af63-4b0c-bb9e-6a633a7503a2" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestIncomeExpenseNonoperatingNet_06b24498-c718-4239-8b51-e7307c4064cd" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InterestIncomeExpenseNonoperatingNet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_5efe7d8a-a3e5-4a37-a48e-fbd27716c674" xlink:to="loc_us-gaap_InterestIncomeExpenseNonoperatingNet_06b24498-c718-4239-8b51-e7307c4064cd" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_IncomeLossFromContinuingOperationsBeforeIncomeTaxesNoncontrollingInterestAdjustmentForRounding_432eb3c3-e4ae-43fb-b9d8-48a0b267f132" xlink:href="wprt-20250630.xsd#wprt_IncomeLossFromContinuingOperationsBeforeIncomeTaxesNoncontrollingInterestAdjustmentForRounding"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_5efe7d8a-a3e5-4a37-a48e-fbd27716c674" xlink:to="loc_wprt_IncomeLossFromContinuingOperationsBeforeIncomeTaxesNoncontrollingInterestAdjustmentForRounding_432eb3c3-e4ae-43fb-b9d8-48a0b267f132" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_6a1852c6-19d5-4715-a9a6-0305d1ce9454" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_5efe7d8a-a3e5-4a37-a48e-fbd27716c674" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_6a1852c6-19d5-4715-a9a6-0305d1ce9454" xlink:type="arc" order="9"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.westport.com/role/SegmentinformationAssetsDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#SegmentinformationAssetsDetails"/>
  <link:definitionLink xlink:role="http://www.westport.com/role/SegmentinformationAssetsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingInformationLineItems_ceda8643-8944-4089-acec-1b4b9c619cfe" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SegmentReportingInformationLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_10f4fc4f-c2d8-4688-86a1-d0379b98c1bf" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_ceda8643-8944-4089-acec-1b4b9c619cfe" xlink:to="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_10f4fc4f-c2d8-4688-86a1-d0379b98c1bf" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsAxis_d3fb686c-2f62-46e8-92d6-c8ea243c7331" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ConsolidationItemsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_10f4fc4f-c2d8-4688-86a1-d0379b98c1bf" xlink:to="loc_srt_ConsolidationItemsAxis_d3fb686c-2f62-46e8-92d6-c8ea243c7331" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsDomain_d3fb686c-2f62-46e8-92d6-c8ea243c7331_default" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ConsolidationItemsDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ConsolidationItemsAxis_d3fb686c-2f62-46e8-92d6-c8ea243c7331" xlink:to="loc_srt_ConsolidationItemsDomain_d3fb686c-2f62-46e8-92d6-c8ea243c7331_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsDomain_99048341-82ae-43bb-90c8-9c633d2a4732" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ConsolidationItemsDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ConsolidationItemsAxis_d3fb686c-2f62-46e8-92d6-c8ea243c7331" xlink:to="loc_srt_ConsolidationItemsDomain_99048341-82ae-43bb-90c8-9c633d2a4732" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingSegmentsMember_a567941c-1623-4768-9af4-cd5e94751d8c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OperatingSegmentsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ConsolidationItemsDomain_99048341-82ae-43bb-90c8-9c633d2a4732" xlink:to="loc_us-gaap_OperatingSegmentsMember_a567941c-1623-4768-9af4-cd5e94751d8c" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CorporateNonSegmentMember_9fe057e4-59e6-4c2b-b239-8c0530279447" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CorporateNonSegmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ConsolidationItemsDomain_99048341-82ae-43bb-90c8-9c633d2a4732" xlink:to="loc_us-gaap_CorporateNonSegmentMember_9fe057e4-59e6-4c2b-b239-8c0530279447" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_d7481d00-ba06-41da-83d4-0b6595423670" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_10f4fc4f-c2d8-4688-86a1-d0379b98c1bf" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_d7481d00-ba06-41da-83d4-0b6595423670" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_d7481d00-ba06-41da-83d4-0b6595423670_default" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_d7481d00-ba06-41da-83d4-0b6595423670" xlink:to="loc_us-gaap_SegmentDomain_d7481d00-ba06-41da-83d4-0b6595423670_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_a169f762-9384-4771-9100-fd0a6b2e4cae" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_d7481d00-ba06-41da-83d4-0b6595423670" xlink:to="loc_us-gaap_SegmentDomain_a169f762-9384-4771-9100-fd0a6b2e4cae" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_HighPressureControlsSystemsMember_e7746b71-d45f-43be-b4c4-8fa103f332cb" xlink:href="wprt-20250630.xsd#wprt_HighPressureControlsSystemsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_a169f762-9384-4771-9100-fd0a6b2e4cae" xlink:to="loc_wprt_HighPressureControlsSystemsMember_e7746b71-d45f-43be-b4c4-8fa103f332cb" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_HeavyDutyOEMMember_6bae1aac-0646-49f8-bf63-baa67028b1be" xlink:href="wprt-20250630.xsd#wprt_HeavyDutyOEMMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_a169f762-9384-4771-9100-fd0a6b2e4cae" xlink:to="loc_wprt_HeavyDutyOEMMember_6bae1aac-0646-49f8-bf63-baa67028b1be" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentExpenditureAdditionToLongLivedAssets_0b28fc27-d32e-4eeb-96b3-20f03db81302" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SegmentExpenditureAdditionToLongLivedAssets"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_ceda8643-8944-4089-acec-1b4b9c619cfe" xlink:to="loc_us-gaap_SegmentExpenditureAdditionToLongLivedAssets_0b28fc27-d32e-4eeb-96b3-20f03db81302" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.westport.com/role/SegmentinformationPercentofrevenuebygeographicallocationDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#SegmentinformationPercentofrevenuebygeographicallocationDetails"/>
  <link:definitionLink xlink:role="http://www.westport.com/role/SegmentinformationPercentofrevenuebygeographicallocationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingInformationLineItems_75d8927f-4daf-4e62-a654-1b584ad28418" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SegmentReportingInformationLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_86164f19-d54c-4637-b65b-43b05b2c88ea" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_75d8927f-4daf-4e62-a654-1b584ad28418" xlink:to="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_86164f19-d54c-4637-b65b-43b05b2c88ea" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_StatementGeographicalAxis_a734fb8f-3b8c-4746-b88f-b40eb3187858" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_StatementGeographicalAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_86164f19-d54c-4637-b65b-43b05b2c88ea" xlink:to="loc_srt_StatementGeographicalAxis_a734fb8f-3b8c-4746-b88f-b40eb3187858" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_SegmentGeographicalDomain_a734fb8f-3b8c-4746-b88f-b40eb3187858_default" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_SegmentGeographicalDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_StatementGeographicalAxis_a734fb8f-3b8c-4746-b88f-b40eb3187858" xlink:to="loc_srt_SegmentGeographicalDomain_a734fb8f-3b8c-4746-b88f-b40eb3187858_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_SegmentGeographicalDomain_ce8b7a80-d3b6-44f9-83e3-2544d98d37d3" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_SegmentGeographicalDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_StatementGeographicalAxis_a734fb8f-3b8c-4746-b88f-b40eb3187858" xlink:to="loc_srt_SegmentGeographicalDomain_ce8b7a80-d3b6-44f9-83e3-2544d98d37d3" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_EuropeMember_dd63fea6-0845-4023-b171-3ea31ea2e31c" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_EuropeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_ce8b7a80-d3b6-44f9-83e3-2544d98d37d3" xlink:to="loc_srt_EuropeMember_dd63fea6-0845-4023-b171-3ea31ea2e31c" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_AsiaMember_1b25e8a8-c615-4887-9523-2515ba5c1d5b" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_AsiaMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_ce8b7a80-d3b6-44f9-83e3-2544d98d37d3" xlink:to="loc_srt_AsiaMember_1b25e8a8-c615-4887-9523-2515ba5c1d5b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_AmericasMember_1c065280-0619-4273-9586-f78cffae7ac7" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_AmericasMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_ce8b7a80-d3b6-44f9-83e3-2544d98d37d3" xlink:to="loc_srt_AmericasMember_1c065280-0619-4273-9586-f78cffae7ac7" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskByTypeAxis_2c376c2d-898f-4504-b1fa-1e48012183c7" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ConcentrationRiskByTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_86164f19-d54c-4637-b65b-43b05b2c88ea" xlink:to="loc_us-gaap_ConcentrationRiskByTypeAxis_2c376c2d-898f-4504-b1fa-1e48012183c7" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain_2c376c2d-898f-4504-b1fa-1e48012183c7_default" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ConcentrationRiskTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis_2c376c2d-898f-4504-b1fa-1e48012183c7" xlink:to="loc_us-gaap_ConcentrationRiskTypeDomain_2c376c2d-898f-4504-b1fa-1e48012183c7_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain_b47c6d25-3ef1-4163-8068-a71883caebda" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ConcentrationRiskTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis_2c376c2d-898f-4504-b1fa-1e48012183c7" xlink:to="loc_us-gaap_ConcentrationRiskTypeDomain_b47c6d25-3ef1-4163-8068-a71883caebda" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GeographicConcentrationRiskMember_0c574352-5680-4c2b-a86c-e0f21841d2fa" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_GeographicConcentrationRiskMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskTypeDomain_b47c6d25-3ef1-4163-8068-a71883caebda" xlink:to="loc_us-gaap_GeographicConcentrationRiskMember_0c574352-5680-4c2b-a86c-e0f21841d2fa" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_01115ea0-a962-4efa-af16-6cca35489040" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_86164f19-d54c-4637-b65b-43b05b2c88ea" xlink:to="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_01115ea0-a962-4efa-af16-6cca35489040" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_01115ea0-a962-4efa-af16-6cca35489040_default" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ConcentrationRiskBenchmarkDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_01115ea0-a962-4efa-af16-6cca35489040" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_01115ea0-a962-4efa-af16-6cca35489040_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_84e6746d-4e61-4eb1-9f5d-8e06aba4f1a4" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ConcentrationRiskBenchmarkDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_01115ea0-a962-4efa-af16-6cca35489040" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_84e6746d-4e61-4eb1-9f5d-8e06aba4f1a4" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SalesRevenueProductLineMember_fbd4755a-e7ac-46e3-b69f-d9b8a27f36d8" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SalesRevenueProductLineMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_84e6746d-4e61-4eb1-9f5d-8e06aba4f1a4" xlink:to="loc_us-gaap_SalesRevenueProductLineMember_fbd4755a-e7ac-46e3-b69f-d9b8a27f36d8" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskPercentage1_dcc9ba47-3276-41e9-9db1-a2c024ff7f3e" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ConcentrationRiskPercentage1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_75d8927f-4daf-4e62-a654-1b584ad28418" xlink:to="loc_us-gaap_ConcentrationRiskPercentage1_dcc9ba47-3276-41e9-9db1-a2c024ff7f3e" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.westport.com/role/SegmentInformationTotalassetallocationDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#SegmentInformationTotalassetallocationDetails"/>
  <link:definitionLink xlink:role="http://www.westport.com/role/SegmentInformationTotalassetallocationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingAssetReconcilingItemLineItems_b2e4d13c-c25b-4932-afb6-2c8fb620605a" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SegmentReportingAssetReconcilingItemLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReconciliationOfAssetsFromSegmentToConsolidatedTable_5dc9b000-23ba-4998-ad84-ed516ee4400a" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ReconciliationOfAssetsFromSegmentToConsolidatedTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_SegmentReportingAssetReconcilingItemLineItems_b2e4d13c-c25b-4932-afb6-2c8fb620605a" xlink:to="loc_us-gaap_ReconciliationOfAssetsFromSegmentToConsolidatedTable_5dc9b000-23ba-4998-ad84-ed516ee4400a" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsAxis_8e1e42c7-6f1d-4eed-bdc9-a5e5af42e443" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ConsolidationItemsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ReconciliationOfAssetsFromSegmentToConsolidatedTable_5dc9b000-23ba-4998-ad84-ed516ee4400a" xlink:to="loc_srt_ConsolidationItemsAxis_8e1e42c7-6f1d-4eed-bdc9-a5e5af42e443" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsDomain_8e1e42c7-6f1d-4eed-bdc9-a5e5af42e443_default" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ConsolidationItemsDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ConsolidationItemsAxis_8e1e42c7-6f1d-4eed-bdc9-a5e5af42e443" xlink:to="loc_srt_ConsolidationItemsDomain_8e1e42c7-6f1d-4eed-bdc9-a5e5af42e443_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsDomain_7fb9df38-3663-4b22-ad2e-a7e19564c413" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ConsolidationItemsDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ConsolidationItemsAxis_8e1e42c7-6f1d-4eed-bdc9-a5e5af42e443" xlink:to="loc_srt_ConsolidationItemsDomain_7fb9df38-3663-4b22-ad2e-a7e19564c413" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingSegmentsMember_a5ae27d3-9ee7-420e-940a-2a82e3bf4e96" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OperatingSegmentsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ConsolidationItemsDomain_7fb9df38-3663-4b22-ad2e-a7e19564c413" xlink:to="loc_us-gaap_OperatingSegmentsMember_a5ae27d3-9ee7-420e-940a-2a82e3bf4e96" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CorporateNonSegmentMember_61425e20-55ab-4f9f-98ae-30df290b5045" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CorporateNonSegmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ConsolidationItemsDomain_7fb9df38-3663-4b22-ad2e-a7e19564c413" xlink:to="loc_us-gaap_CorporateNonSegmentMember_61425e20-55ab-4f9f-98ae-30df290b5045" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_98a45e7d-e0e8-4141-aae2-8405f3f0488c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ReconciliationOfAssetsFromSegmentToConsolidatedTable_5dc9b000-23ba-4998-ad84-ed516ee4400a" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_98a45e7d-e0e8-4141-aae2-8405f3f0488c" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_98a45e7d-e0e8-4141-aae2-8405f3f0488c_default" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_98a45e7d-e0e8-4141-aae2-8405f3f0488c" xlink:to="loc_us-gaap_SegmentDomain_98a45e7d-e0e8-4141-aae2-8405f3f0488c_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_556e2afd-e2b1-49bf-b3f4-117ebc7c3985" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_98a45e7d-e0e8-4141-aae2-8405f3f0488c" xlink:to="loc_us-gaap_SegmentDomain_556e2afd-e2b1-49bf-b3f4-117ebc7c3985" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_LightDutyMember_a9959811-802c-4f13-9bb2-89cd22b6f330" xlink:href="wprt-20250630.xsd#wprt_LightDutyMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_556e2afd-e2b1-49bf-b3f4-117ebc7c3985" xlink:to="loc_wprt_LightDutyMember_a9959811-802c-4f13-9bb2-89cd22b6f330" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_HighPressureControlsSystemsMember_31ef3735-5a3e-41ba-8b80-c6f2eb88c64c" xlink:href="wprt-20250630.xsd#wprt_HighPressureControlsSystemsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_556e2afd-e2b1-49bf-b3f4-117ebc7c3985" xlink:to="loc_wprt_HighPressureControlsSystemsMember_31ef3735-5a3e-41ba-8b80-c6f2eb88c64c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_HeavyDutyOEMMember_6117c04b-2e1d-4a29-aa5a-b98f7c72c4d6" xlink:href="wprt-20250630.xsd#wprt_HeavyDutyOEMMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_556e2afd-e2b1-49bf-b3f4-117ebc7c3985" xlink:to="loc_wprt_HeavyDutyOEMMember_6117c04b-2e1d-4a29-aa5a-b98f7c72c4d6" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Assets_d49d6f94-d9b8-4652-8a75-3cbdd9d0dc6f" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_Assets"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingAssetReconcilingItemLineItems_b2e4d13c-c25b-4932-afb6-2c8fb620605a" xlink:to="loc_us-gaap_Assets_d49d6f94-d9b8-4652-8a75-3cbdd9d0dc6f" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.westport.com/role/FinancialinstrumentsFinancialObligationsDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#FinancialinstrumentsFinancialObligationsDetails"/>
  <link:definitionLink xlink:role="http://www.westport.com/role/FinancialinstrumentsFinancialObligationsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherCommitmentsLineItems_22836eef-7eeb-4cbf-9f23-3e928803f44c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherCommitmentsLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherCommitmentsTable_3fad9584-fc47-4d48-a3f7-2ea0f17b4d8a" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherCommitmentsTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_OtherCommitmentsLineItems_22836eef-7eeb-4cbf-9f23-3e928803f44c" xlink:to="loc_us-gaap_OtherCommitmentsTable_3fad9584-fc47-4d48-a3f7-2ea0f17b4d8a" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ContractualObligationsTypeAxis_822011f8-9132-4542-a3c6-30550bbdedaa" xlink:href="wprt-20250630.xsd#wprt_ContractualObligationsTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_OtherCommitmentsTable_3fad9584-fc47-4d48-a3f7-2ea0f17b4d8a" xlink:to="loc_wprt_ContractualObligationsTypeAxis_822011f8-9132-4542-a3c6-30550bbdedaa" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ContractualObligationsTypeDomain_822011f8-9132-4542-a3c6-30550bbdedaa_default" xlink:href="wprt-20250630.xsd#wprt_ContractualObligationsTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_wprt_ContractualObligationsTypeAxis_822011f8-9132-4542-a3c6-30550bbdedaa" xlink:to="loc_wprt_ContractualObligationsTypeDomain_822011f8-9132-4542-a3c6-30550bbdedaa_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ContractualObligationsTypeDomain_95c8cd0e-a473-46a3-bd6f-fa720fe46f51" xlink:href="wprt-20250630.xsd#wprt_ContractualObligationsTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_wprt_ContractualObligationsTypeAxis_822011f8-9132-4542-a3c6-30550bbdedaa" xlink:to="loc_wprt_ContractualObligationsTypeDomain_95c8cd0e-a473-46a3-bd6f-fa720fe46f51" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesMember_95fa5bde-d5c6-45e1-91fd-522a6205a114" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_wprt_ContractualObligationsTypeDomain_95c8cd0e-a473-46a3-bd6f-fa720fe46f51" xlink:to="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesMember_95fa5bde-d5c6-45e1-91fd-522a6205a114" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SecuredDebtMember_09fd98b7-9d52-44a7-a36e-8c01ac27c8bd" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SecuredDebtMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_wprt_ContractualObligationsTypeDomain_95c8cd0e-a473-46a3-bd6f-fa720fe46f51" xlink:to="loc_us-gaap_SecuredDebtMember_09fd98b7-9d52-44a7-a36e-8c01ac27c8bd" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_OperatingLeaseExpensesMember_abdec545-88f4-4f21-88c7-9a2ffd9ff912" xlink:href="wprt-20250630.xsd#wprt_OperatingLeaseExpensesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_wprt_ContractualObligationsTypeDomain_95c8cd0e-a473-46a3-bd6f-fa720fe46f51" xlink:to="loc_wprt_OperatingLeaseExpensesMember_abdec545-88f4-4f21-88c7-9a2ffd9ff912" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractualObligation_c9e8b5cd-52ee-4658-922d-06a26bf95e5b" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ContractualObligation"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OtherCommitmentsLineItems_22836eef-7eeb-4cbf-9f23-3e928803f44c" xlink:to="loc_us-gaap_ContractualObligation_c9e8b5cd-52ee-4658-922d-06a26bf95e5b" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ContractualObligationsRepaymentsTotal_b42334e0-50fe-4962-b472-c36ab31b3878" xlink:href="wprt-20250630.xsd#wprt_ContractualObligationsRepaymentsTotal"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OtherCommitmentsLineItems_22836eef-7eeb-4cbf-9f23-3e928803f44c" xlink:to="loc_wprt_ContractualObligationsRepaymentsTotal_b42334e0-50fe-4962-b472-c36ab31b3878" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractualObligationDueInNextTwelveMonths_bde8af46-d3b7-4e32-9aae-571491402087" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ContractualObligationDueInNextTwelveMonths"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OtherCommitmentsLineItems_22836eef-7eeb-4cbf-9f23-3e928803f44c" xlink:to="loc_us-gaap_ContractualObligationDueInNextTwelveMonths_bde8af46-d3b7-4e32-9aae-571491402087" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractualObligationDueInSecondAndThirdYear_3ec69408-d770-4369-9057-9d26c2058ec2" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ContractualObligationDueInSecondAndThirdYear"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OtherCommitmentsLineItems_22836eef-7eeb-4cbf-9f23-3e928803f44c" xlink:to="loc_us-gaap_ContractualObligationDueInSecondAndThirdYear_3ec69408-d770-4369-9057-9d26c2058ec2" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractualObligationDueInFourthAndFifthYear_522ddaa6-d331-49ab-ba87-f8d0f101ca06" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ContractualObligationDueInFourthAndFifthYear"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OtherCommitmentsLineItems_22836eef-7eeb-4cbf-9f23-3e928803f44c" xlink:to="loc_us-gaap_ContractualObligationDueInFourthAndFifthYear_522ddaa6-d331-49ab-ba87-f8d0f101ca06" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractualObligationDueAfterFifthYear_8e4aea97-f979-4eda-89b4-8e550772f563" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ContractualObligationDueAfterFifthYear"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OtherCommitmentsLineItems_22836eef-7eeb-4cbf-9f23-3e928803f44c" xlink:to="loc_us-gaap_ContractualObligationDueAfterFifthYear_8e4aea97-f979-4eda-89b4-8e550772f563" xlink:type="arc" order="5"/>
  </link:definitionLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.LAB
<SEQUENCE>6
<FILENAME>wprt-20250630_lab.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION LABEL LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with the Workiva Platform-->
<!--Copyright 2025 Workiva-->
<!--r:ad297659-f296-4abb-b3c8-4f222db3fa0c,g:5bd34070-f794-402d-a468-34e565af0565-->
<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_ProceedsFromDivestitureOfBusinesses_8d21954e-fa99-4b0a-a966-a17faf11b05c_terseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromDivestitureOfBusinesses" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cash proceeds from sale</link:label>
    <link:label id="lab_us-gaap_ProceedsFromDivestitureOfBusinesses_label_en-US" xlink:label="lab_us-gaap_ProceedsFromDivestitureOfBusinesses" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Proceeds from Divestiture of Businesses</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromDivestitureOfBusinesses" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ProceedsFromDivestitureOfBusinesses"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromDivestitureOfBusinesses" xlink:to="lab_us-gaap_ProceedsFromDivestitureOfBusinesses" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_TradeAccountsReceivable_a211662e-9291-430f-b4d2-ba48dda5c19c_terseLabel_en-US" xlink:label="lab_wprt_TradeAccountsReceivable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Customer trade receivables</link:label>
    <link:label id="lab_wprt_TradeAccountsReceivable_label_en-US" xlink:label="lab_wprt_TradeAccountsReceivable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Trade Accounts Receivable</link:label>
    <link:label id="lab_wprt_TradeAccountsReceivable_documentation_en-US" xlink:label="lab_wprt_TradeAccountsReceivable" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">The amount of receivables that are derived from customers.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_TradeAccountsReceivable" xlink:href="wprt-20250630.xsd#wprt_TradeAccountsReceivable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_TradeAccountsReceivable" xlink:to="lab_wprt_TradeAccountsReceivable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RelatedPartyTransactionAxis_eb445eac-18bb-434c-b65a-3059ce3ca38f_terseLabel_en-US" xlink:label="lab_us-gaap_RelatedPartyTransactionAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.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_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_f919e815-8202-40f1-8184-4939a0736862_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">The remainder of 2025</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, Remainder of Fiscal Year</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_InventoryPurchasedServicesAndOtherExpensesMember_96721df0-89e5-41f7-8d08-ee87b607e958_terseLabel_en-US" xlink:label="lab_wprt_InventoryPurchasedServicesAndOtherExpensesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Inventory purchased, services and other expenses</link:label>
    <link:label id="lab_wprt_InventoryPurchasedServicesAndOtherExpensesMember_label_en-US" xlink:label="lab_wprt_InventoryPurchasedServicesAndOtherExpensesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Inventory Purchased, Services and Other Expenses [Member]</link:label>
    <link:label id="lab_wprt_InventoryPurchasedServicesAndOtherExpensesMember_documentation_en-US" xlink:label="lab_wprt_InventoryPurchasedServicesAndOtherExpensesMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Inventory Purchased, Services and Other Expenses</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_InventoryPurchasedServicesAndOtherExpensesMember" xlink:href="wprt-20250630.xsd#wprt_InventoryPurchasedServicesAndOtherExpensesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_InventoryPurchasedServicesAndOtherExpensesMember" xlink:to="lab_wprt_InventoryPurchasedServicesAndOtherExpensesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdditionalPaidInCapitalMember_b6deeaaa-e4eb-4d86-ae76-ac23192b38f4_terseLabel_en-US" xlink:label="lab_us-gaap_AdditionalPaidInCapitalMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.xsd#us-gaap_AdditionalPaidInCapitalMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdditionalPaidInCapitalMember" xlink:to="lab_us-gaap_AdditionalPaidInCapitalMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeLossFromEquityMethodInvestments_14546a01-4cda-457b-a940-31ab2776092d_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeLossFromEquityMethodInvestments" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Loss from investments accounted for by the equity method</link:label>
    <link:label id="lab_us-gaap_IncomeLossFromEquityMethodInvestments_afa7ee42-ef08-4c58-a9f7-42f858e982bb_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_IncomeLossFromEquityMethodInvestments" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Loss from investments accounted for by the equity method</link:label>
    <link:label id="lab_us-gaap_IncomeLossFromEquityMethodInvestments_57aa147a-ac3c-46c3-b25e-dbeff8a12add_verboseLabel_en-US" xlink:label="lab_us-gaap_IncomeLossFromEquityMethodInvestments" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Equity income (loss)</link:label>
    <link:label id="lab_us-gaap_IncomeLossFromEquityMethodInvestments_label_en-US" xlink:label="lab_us-gaap_IncomeLossFromEquityMethodInvestments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income (Loss) from Equity Method Investments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromEquityMethodInvestments" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeLossFromEquityMethodInvestments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeLossFromEquityMethodInvestments" xlink:to="lab_us-gaap_IncomeLossFromEquityMethodInvestments" xlink:type="arc" order="1"/>
    <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" 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/2025/elts/us-gaap-2025.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_EarningsPerShareBasicAbstract_4ef67604-ea4f-480b-b2b8-bbeaf03f0e35_terseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareBasicAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Net income (loss) per share:</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareBasicAbstract_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareBasicAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Earnings Per Share, Basic [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareBasicAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EarningsPerShareBasicAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareBasicAbstract" xlink:to="lab_us-gaap_EarningsPerShareBasicAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_1f6cabcf-93a1-4d50-8b0c-a22cfb2c922a_terseLabel_en-US" xlink:label="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Upcoming accounting standards not yet adopted</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" 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/2025/elts/us-gaap-2025.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_ScheduleOfRelatedPartyTransactionsTableTextBlock_735239f8-8ef5-4e52-99ba-f79a57ec14a9_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfRelatedPartyTransactionsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Related Party Transactions</link:label>
    <link:label id="lab_us-gaap_ScheduleOfRelatedPartyTransactionsTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfRelatedPartyTransactionsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Related Party Transactions [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRelatedPartyTransactionsTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfRelatedPartyTransactionsTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfRelatedPartyTransactionsTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfRelatedPartyTransactionsTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock_a1d706be-332c-4d08-9aca-78e7c9df4e2d_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Discontinued Operations</link:label>
    <link:label id="lab_us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Groups, Including Discontinued Operations [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock" xlink:to="lab_us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InterestIncomeExpenseNonoperatingNet_e0c8a52f-337a-4c25-afa6-b69b486ab638_terseLabel_en-US" xlink:label="lab_us-gaap_InterestIncomeExpenseNonoperatingNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Interest and other income (loss), net of bank charges</link:label>
    <link:label id="lab_us-gaap_InterestIncomeExpenseNonoperatingNet_52cd7ab4-6a4f-4ac8-9a29-1829e853d3c1_verboseLabel_en-US" xlink:label="lab_us-gaap_InterestIncomeExpenseNonoperatingNet" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Interest income, net of bank charges</link:label>
    <link:label id="lab_us-gaap_InterestIncomeExpenseNonoperatingNet_41e2b82a-231a-4f4d-95b7-fe91382e9d9a_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_InterestIncomeExpenseNonoperatingNet" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Interest and other income, net of bank charges</link:label>
    <link:label id="lab_us-gaap_InterestIncomeExpenseNonoperatingNet_label_en-US" xlink:label="lab_us-gaap_InterestIncomeExpenseNonoperatingNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Interest Income (Expense), Nonoperating</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestIncomeExpenseNonoperatingNet" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InterestIncomeExpenseNonoperatingNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InterestIncomeExpenseNonoperatingNet" xlink:to="lab_us-gaap_InterestIncomeExpenseNonoperatingNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EarningsPerShareBasic_dbba028b-df44-4e47-a877-d9ef8ff8867d_totalLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareBasic" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net income (loss) per share - basic (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareBasic_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareBasic" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Earnings Per Share, Basic</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareBasic" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EarningsPerShareBasic"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareBasic" xlink:to="lab_us-gaap_EarningsPerShareBasic" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RelatedPartyTransactionsDisclosureTextBlock_407de5b9-cc14-41f4-a983-1bc8b640c179_terseLabel_en-US" xlink:label="lab_us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Related party transactions</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" 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/2025/elts/us-gaap-2025.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_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities_ac7a2da5-3a1a-487b-8ed3-e55fab03f50b_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accounts payable and accrued liabilities</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase (Decrease) in Accounts Payable and Accrued Liabilities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:to="lab_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations_c4ed090e-2bfa-4b32-93b0-c53101983162_totalLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net cash used in financing activities of continuing operations</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash Provided by (Used in) Financing Activity, Continuing Operation</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations" xlink:to="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxAssetsGross_2b70c820-7ac5-4473-9604-a119e799f58c_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsGross" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Deferred tax assets</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsGross_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsGross" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Tax Assets, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsGross" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DeferredTaxAssetsGross"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsGross" xlink:to="lab_us-gaap_DeferredTaxAssetsGross" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock_1e778ad6-c5fc-4a85-b1f0-dcc7d72e6217_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Segment Reporting Information</link:label>
    <link:label id="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Segment Reporting Information, by Segment [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:to="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare_980b2771-30a4-4a0a-8714-6dcad8ed91f2_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">From discontinued operations - diluted (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare_label_en-US" xlink:label="lab_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income (Loss) from Discontinued Operations and Disposal of Discontinued Operations, Net of Tax, Per Diluted Share</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare" xlink:to="lab_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShortTermBorrowings_d3b9566e-9137-4684-a73d-96d94d9dc1a0_terseLabel_en-US" xlink:label="lab_us-gaap_ShortTermBorrowings" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Current portion of provisions</link:label>
    <link:label id="lab_us-gaap_ShortTermBorrowings_label_en-US" xlink:label="lab_us-gaap_ShortTermBorrowings" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Short-Term Debt</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermBorrowings" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShortTermBorrowings"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShortTermBorrowings" xlink:to="lab_us-gaap_ShortTermBorrowings" xlink:type="arc" order="1"/>
    <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" 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/2025/elts/us-gaap-2025.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_wprt_DisposalGroupIncludingDiscontinuedOperationValuationAllowance_90a3993a-7660-40a5-9664-e8534a70bc4d_negatedTerseLabel_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationValuationAllowance" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Valuation allowance from classifying the discontinued operations as held-for-sale</link:label>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationValuationAllowance_label_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationValuationAllowance" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Valuation Allowance</link:label>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationValuationAllowance_documentation_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationValuationAllowance" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Valuation Allowance</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationValuationAllowance" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationValuationAllowance"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_DisposalGroupIncludingDiscontinuedOperationValuationAllowance" xlink:to="lab_wprt_DisposalGroupIncludingDiscontinuedOperationValuationAllowance" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation_90256444-909e-40d7-9711-0182b533a6ed_totalLabel_en-US" xlink:label="lab_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total assets classified as held for sale</link:label>
    <link:label id="lab_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation_label_en-US" xlink:label="lab_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation" xlink:to="lab_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConcentrationRiskPercentage1_57fc4d0a-da33-4f39-a733-aec12db882db_terseLabel_en-US" xlink:label="lab_us-gaap_ConcentrationRiskPercentage1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Concentration percentage</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" 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/2025/elts/us-gaap-2025.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_wprt_ShareBasedPaymentArrangementExpenseSettledInShares_e361ab44-fc5f-4508-8a23-f80a2c2cd9f4_terseLabel_en-US" xlink:label="lab_wprt_ShareBasedPaymentArrangementExpenseSettledInShares" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Stock-based compensation settled in shares</link:label>
    <link:label id="lab_wprt_ShareBasedPaymentArrangementExpenseSettledInShares_label_en-US" xlink:label="lab_wprt_ShareBasedPaymentArrangementExpenseSettledInShares" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Payment Arrangement, Expense, Settled In Shares</link:label>
    <link:label id="lab_wprt_ShareBasedPaymentArrangementExpenseSettledInShares_documentation_en-US" xlink:label="lab_wprt_ShareBasedPaymentArrangementExpenseSettledInShares" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Share-Based Payment Arrangement, Expense, Settled In Shares</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ShareBasedPaymentArrangementExpenseSettledInShares" xlink:href="wprt-20250630.xsd#wprt_ShareBasedPaymentArrangementExpenseSettledInShares"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_ShareBasedPaymentArrangementExpenseSettledInShares" xlink:to="lab_wprt_ShareBasedPaymentArrangementExpenseSettledInShares" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensation_0b62d358-bca9-42e4-b803-65dac50c93ca_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensation" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Stock-based compensation expense</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" 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/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensation" xlink:to="lab_us-gaap_ShareBasedCompensation" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ContractualObligationDueAfterFifthYear_1a9739df-7015-4ede-867d-fb0a1b568a92_terseLabel_en-US" xlink:label="lab_us-gaap_ContractualObligationDueAfterFifthYear" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Contractual obligation, due after 5 years</link:label>
    <link:label id="lab_us-gaap_ContractualObligationDueAfterFifthYear_label_en-US" xlink:label="lab_us-gaap_ContractualObligationDueAfterFifthYear" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Contractual Obligation, to be Paid, after Year Five</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractualObligationDueAfterFifthYear" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ContractualObligationDueAfterFifthYear"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ContractualObligationDueAfterFifthYear" xlink:to="lab_us-gaap_ContractualObligationDueAfterFifthYear" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_45943b93-a626-4113-9fcf-dad9963491fb_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.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_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable_3bfe7106-3a8f-461e-8538-437441dc8ee8_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accounts and Financing Receivables [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts and Financing Receivables [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable" xlink:to="lab_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsToAcquireEquityMethodInvestments_1379a78b-ae58-4370-aa70-357b44fcbe23_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireEquityMethodInvestments" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Capital contributions to investments accounted for by the equity method</link:label>
    <link:label id="lab_us-gaap_PaymentsToAcquireEquityMethodInvestments_391c946a-b43b-41df-a2ab-d6701db2c153_terseLabel_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireEquityMethodInvestments" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Capital contributions to investments accounted for by the equity method investment</link:label>
    <link:label id="lab_us-gaap_PaymentsToAcquireEquityMethodInvestments_label_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireEquityMethodInvestments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Payments to Acquire Equity Method Investments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireEquityMethodInvestments" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PaymentsToAcquireEquityMethodInvestments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsToAcquireEquityMethodInvestments" xlink:to="lab_us-gaap_PaymentsToAcquireEquityMethodInvestments" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockholdersEquity_740e5c61-bacd-4e8c-ae27-5e8be46368a7_totalLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total shareholders' equity</link:label>
    <link:label id="lab_us-gaap_StockholdersEquity_f0d4c793-ddd5-4b0f-8fcb-b56270cc0a51_periodStartLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Balance</link:label>
    <link:label id="lab_us-gaap_StockholdersEquity_20e38478-f0ae-4fcc-a7c2-0d3469e9bde0_periodEndLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Balance</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" xml:lang="en-US">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/2025/elts/us-gaap-2025.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_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_2e135b64-e1fc-4e19-8de9-dcd36c33d7e3_verboseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Other comprehensive income (loss):</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Comprehensive Income (Loss), Net of Tax [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AllocatedShareBasedCompensationExpense_cbf72544-5df3-482c-aade-f4c72946b7d5_verboseLabel_en-US" xlink:label="lab_us-gaap_AllocatedShareBasedCompensationExpense" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">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" 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/2025/elts/us-gaap-2025.xsd#us-gaap_AllocatedShareBasedCompensationExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AllocatedShareBasedCompensationExpense" xlink:to="lab_us-gaap_AllocatedShareBasedCompensationExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentTextBlock_13b65742-b9f4-4bcc-8b6d-994caa464970_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Property, Plant 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" 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/2025/elts/us-gaap-2025.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_SegmentReportingAssetReconcilingItemLineItems_c9e37fcb-ade7-49ff-8f33-320e2e1d2cc1_terseLabel_en-US" xlink:label="lab_us-gaap_SegmentReportingAssetReconcilingItemLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Segment Reporting, Asset Reconciling Item [Line Items]</link:label>
    <link:label id="lab_us-gaap_SegmentReportingAssetReconcilingItemLineItems_label_en-US" xlink:label="lab_us-gaap_SegmentReportingAssetReconcilingItemLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Segment Reporting, Asset Reconciling Item [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingAssetReconcilingItemLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SegmentReportingAssetReconcilingItemLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SegmentReportingAssetReconcilingItemLineItems" xlink:to="lab_us-gaap_SegmentReportingAssetReconcilingItemLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AssetsCurrentAbstract_b58af192-9305-41de-b013-6deb74aa6acb_terseLabel_en-US" xlink:label="lab_us-gaap_AssetsCurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.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_wprt_DepreciationDepletionAndAmortizationAdjusted_0240ace2-9fe8-4c3e-8ddb-17cc72fdec27_verboseLabel_en-US" xlink:label="lab_wprt_DepreciationDepletionAndAmortizationAdjusted" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Depreciation and amortization</link:label>
    <link:label id="lab_wprt_DepreciationDepletionAndAmortizationAdjusted_label_en-US" xlink:label="lab_wprt_DepreciationDepletionAndAmortizationAdjusted" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Depreciation, Depletion And Amortization, Adjusted</link:label>
    <link:label id="lab_wprt_DepreciationDepletionAndAmortizationAdjusted_documentation_en-US" xlink:label="lab_wprt_DepreciationDepletionAndAmortizationAdjusted" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Depreciation, Depletion And Amortization, Adjusted</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DepreciationDepletionAndAmortizationAdjusted" xlink:href="wprt-20250630.xsd#wprt_DepreciationDepletionAndAmortizationAdjusted"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_DepreciationDepletionAndAmortizationAdjusted" xlink:to="lab_wprt_DepreciationDepletionAndAmortizationAdjusted" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesAndStockholdersEquity_a79cb2d1-39e6-4a55-8873-c9ca08976dbb_totalLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total liabilities and shareholders' 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" 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/2025/elts/us-gaap-2025.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_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock_2fc429b5-0b5e-4613-834e-9bd08660319d_terseLabel_en-US" xlink:label="lab_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Foreign currency translation</link:label>
    <link:label id="lab_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Foreign Currency Transactions and Translations Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:to="lab_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConcentrationRiskByBenchmarkAxis_a6ddd7a3-114c-4966-9559-ecefcc4c4ac8_terseLabel_en-US" xlink:label="lab_us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_156b8731-b9ed-468c-a7a8-491acdabb637_periodStartLabel_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Cash and cash equivalents, beginning of period (including restricted cash)</link:label>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_11c4efc9-bc67-4a5a-a7ab-d4ab2a8043ca_periodEndLabel_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Cash and cash equivalents, end of period (including restricted cash)</link:label>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_label_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash, Cash Equivalent, Restricted Cash, and Restricted Cash Equivalent, Including Discontinued Operation</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:to="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract_1e8cbc81-ed99-4fcd-bb44-8a73c2c59f1d_terseLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Liabilities and shareholders&#8217; equity</link:label>
    <link:label id="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract_label_en-US" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Liabilities and Equity [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:type="arc" order="1"/>
    <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" 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/2025/dei-2025.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_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock_67cc976c-2391-43aa-9855-e72af37981e4_terseLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Held-for-sale disposal group and discontinued operations</link:label>
    <link:label id="lab_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Groups, Including Discontinued Operations, Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock" xlink:to="lab_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GeneralAndAdministrativeExpenseMember_f6bf5c4f-b27d-44f4-b86b-655686ce71f6_verboseLabel_en-US" xlink:label="lab_us-gaap_GeneralAndAdministrativeExpenseMember" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">General and administrative</link:label>
    <link:label id="lab_us-gaap_GeneralAndAdministrativeExpenseMember_label_en-US" xlink:label="lab_us-gaap_GeneralAndAdministrativeExpenseMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">General and Administrative Expense [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpenseMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_GeneralAndAdministrativeExpenseMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GeneralAndAdministrativeExpenseMember" xlink:to="lab_us-gaap_GeneralAndAdministrativeExpenseMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfEquityMethodInvestmentsTable_4eb86066-c1c0-47d7-9881-192929246e61_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfEquityMethodInvestmentsTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Equity Method Investment [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfEquityMethodInvestmentsTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfEquityMethodInvestmentsTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity Method Investment [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEquityMethodInvestmentsTable" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfEquityMethodInvestmentsTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfEquityMethodInvestmentsTable" xlink:to="lab_us-gaap_ScheduleOfEquityMethodInvestmentsTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SegmentExpenditureAdditionToLongLivedAssets_e81d3283-7304-4335-b0b8-1ecc0fc7784f_terseLabel_en-US" xlink:label="lab_us-gaap_SegmentExpenditureAdditionToLongLivedAssets" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Total consolidated</link:label>
    <link:label id="lab_us-gaap_SegmentExpenditureAdditionToLongLivedAssets_label_en-US" xlink:label="lab_us-gaap_SegmentExpenditureAdditionToLongLivedAssets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Segment, Expenditure, Addition to Long-Lived Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentExpenditureAdditionToLongLivedAssets" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SegmentExpenditureAdditionToLongLivedAssets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SegmentExpenditureAdditionToLongLivedAssets" xlink:to="lab_us-gaap_SegmentExpenditureAdditionToLongLivedAssets" xlink:type="arc" order="1"/>
    <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" 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/2025/elts/us-gaap-2025.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountingPoliciesAbstract" xlink:to="lab_us-gaap_AccountingPoliciesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_3e84a782-4f9b-4f2a-984b-77981256c521_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Maturities of 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" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, 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/2025/elts/us-gaap-2025.xsd#us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConcentrationRiskTypeDomain_b6f68c8e-012d-4909-bd04-8491c1b00b9a_terseLabel_en-US" xlink:label="lab_us-gaap_ConcentrationRiskTypeDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.xsd#us-gaap_ConcentrationRiskTypeDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskTypeDomain" xlink:to="lab_us-gaap_ConcentrationRiskTypeDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentLineItems_c4ed5940-bf74-483c-8f88-1ab6797a1965_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.xsd#us-gaap_DebtInstrumentLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentLineItems" xlink:to="lab_us-gaap_DebtInstrumentLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_65183a21-363c-4cf8-86d8-a5032a77c6ad_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.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_DebtLongtermAndShorttermCombinedAmount_5b2bae25-85a2-49f5-bf74-2dedb073a259_terseLabel_en-US" xlink:label="lab_us-gaap_DebtLongtermAndShorttermCombinedAmount" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Long-term debt</link:label>
    <link:label id="lab_us-gaap_DebtLongtermAndShorttermCombinedAmount_label_en-US" xlink:label="lab_us-gaap_DebtLongtermAndShorttermCombinedAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt, Long-Term and Short-Term, Combined Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtLongtermAndShorttermCombinedAmount" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtLongtermAndShorttermCombinedAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtLongtermAndShorttermCombinedAmount" xlink:to="lab_us-gaap_DebtLongtermAndShorttermCombinedAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsPayableAndAccruedLiabilitiesCurrent_2c781ce2-5314-4873-99fa-b2cbae25604c_terseLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsPayableAndAccruedLiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accounts payable and accrued liabilities</link:label>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsPayableAndAccruedLiabilitiesCurrent_label_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsPayableAndAccruedLiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Accounts Payable and Accrued Liabilities, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsPayableAndAccruedLiabilitiesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsPayableAndAccruedLiabilitiesCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsPayableAndAccruedLiabilitiesCurrent" xlink:to="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsPayableAndAccruedLiabilitiesCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseLiability_5ed2d917-9bef-4f9f-a6d8-eb53be6a65ac_totalLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiability" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Present value of operating lease liabilities</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" 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/2025/elts/us-gaap-2025.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_ContractualObligationDueInSecondAndThirdYear_7046d5e3-5adb-4b21-9016-85c48e2cc4f7_terseLabel_en-US" xlink:label="lab_us-gaap_ContractualObligationDueInSecondAndThirdYear" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Contractual obligation, due 1-3 years</link:label>
    <link:label id="lab_us-gaap_ContractualObligationDueInSecondAndThirdYear_label_en-US" xlink:label="lab_us-gaap_ContractualObligationDueInSecondAndThirdYear" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Contractual Obligation, to be Paid, Year Two and Three</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractualObligationDueInSecondAndThirdYear" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ContractualObligationDueInSecondAndThirdYear"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ContractualObligationDueInSecondAndThirdYear" xlink:to="lab_us-gaap_ContractualObligationDueInSecondAndThirdYear" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGrantedWeightedAverageGrantDateFairValue_3efbdd3d-5a77-47fc-9692-c98f850bc47a_verboseLabel_en-US" xlink:label="lab_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGrantedWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Granted (in Canadian dollars per share)</link:label>
    <link:label id="lab_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGrantedWeightedAverageGrantDateFairValue_label_en-US" xlink:label="lab_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGrantedWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share Based Compensation Arrangement by Share Based Payment Award Non Option Equity Instruments Granted Weighted Average Grant Date Fair Value</link:label>
    <link:label id="lab_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGrantedWeightedAverageGrantDateFairValue_documentation_en-US" xlink:label="lab_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGrantedWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">The weighted average grant date fair value of non option equity instruments granted during the period.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGrantedWeightedAverageGrantDateFairValue" xlink:href="wprt-20250630.xsd#wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGrantedWeightedAverageGrantDateFairValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGrantedWeightedAverageGrantDateFairValue" xlink:to="lab_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGrantedWeightedAverageGrantDateFairValue" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingWeightedAverageGrantDateFairValue_70237c5d-c4db-465a-b037-fbd8c362b8fe_periodStartLabel_en-US" xlink:label="lab_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Outstanding, beginning of period (in Canadian dollars per share)</link:label>
    <link:label id="lab_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingWeightedAverageGrantDateFairValue_23a9e0ce-59a3-4aa5-8013-75f7064272e6_periodEndLabel_en-US" xlink:label="lab_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Outstanding, end of period (in Canadian dollars per share)</link:label>
    <link:label id="lab_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingWeightedAverageGrantDateFairValue_label_en-US" xlink:label="lab_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share Based Compensation Arrangement by Share Based Payment Award Non Option Equity Instruments Outstanding Weighted Average Grant Date Fair Value</link:label>
    <link:label id="lab_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingWeightedAverageGrantDateFairValue_documentation_en-US" xlink:label="lab_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Weighted average grant-date fair value of non-option equity instruments outstanding.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingWeightedAverageGrantDateFairValue" xlink:href="wprt-20250630.xsd#wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingWeightedAverageGrantDateFairValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingWeightedAverageGrantDateFairValue" xlink:to="lab_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingWeightedAverageGrantDateFairValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinanceLeaseRightOfUseAssetAmortization_9dbd6d8f-230e-47f2-9259-d493b4323210_terseLabel_en-US" xlink:label="lab_us-gaap_FinanceLeaseRightOfUseAssetAmortization" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Amortization of right-of-use assets</link:label>
    <link:label id="lab_us-gaap_FinanceLeaseRightOfUseAssetAmortization_label_en-US" xlink:label="lab_us-gaap_FinanceLeaseRightOfUseAssetAmortization" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finance Lease, Right-of-Use Asset, Amortization</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseRightOfUseAssetAmortization" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_FinanceLeaseRightOfUseAssetAmortization"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinanceLeaseRightOfUseAssetAmortization" xlink:to="lab_us-gaap_FinanceLeaseRightOfUseAssetAmortization" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_aecacd92-8916-4d83-a621-d9469efa2acf_totalLabel_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Income (loss) before income taxes</link:label>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_b21d2060-bf2e-4ef9-9430-4fe1c1db07f0_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Income (loss) before income taxes</link:label>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_label_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent_0969a711-c502-42c7-92e1-765b9ae7dac9_terseLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Long-term liabilities held for sale (note 5)</link:label>
    <link:label id="lab_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent_c715b284-b44c-4c0f-bfef-b11173fe43ad_totalLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Noncurrent liabilities classified as held for sale</link:label>
    <link:label id="lab_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent_label_en-US" xlink:label="lab_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Liabilities, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent" xlink:to="lab_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherLiabilitiesNoncurrent_4a12cb87-7f29-486a-ac0d-989215e7b953_terseLabel_en-US" xlink:label="lab_us-gaap_OtherLiabilitiesNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other long-term liabilities</link:label>
    <link:label id="lab_us-gaap_OtherLiabilitiesNoncurrent_label_en-US" xlink:label="lab_us-gaap_OtherLiabilitiesNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Liabilities, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherLiabilitiesNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherLiabilitiesNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherLiabilitiesNoncurrent" xlink:to="lab_us-gaap_OtherLiabilitiesNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentTable_19b69d86-b7b1-4661-b883-3551a4ba3a98_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.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_us-gaap_StatementOfStockholdersEquityAbstract_label_en-US" xlink:label="lab_us-gaap_StatementOfStockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" 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/2025/elts/us-gaap-2025.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_OperatingSegmentsMember_e45a3d53-299b-483d-b080-ba53afe52a4d_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingSegmentsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating Segments</link:label>
    <link:label id="lab_us-gaap_OperatingSegmentsMember_label_en-US" xlink:label="lab_us-gaap_OperatingSegmentsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Segments [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingSegmentsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OperatingSegmentsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingSegmentsMember" xlink:to="lab_us-gaap_OperatingSegmentsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss_0d38faf7-98e1-4ebf-82af-17a5dad949eb_totalLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Gross profit</link:label>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss_label_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Gross Profit (Loss)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss" xlink:to="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss" xlink:type="arc" order="1"/>
    <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" 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/2025/elts/us-gaap-2025.xsd#us-gaap_StatementOfCashFlowsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract" xlink:to="lab_us-gaap_StatementOfCashFlowsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_07139bbb-5613-4523-a6f7-b11bba03d8de_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2028</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, Year Three</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ComprehensiveIncomeNetOfTax_12c942bf-2e85-43ba-bf25-11471678c409_totalLabel_en-US" xlink:label="lab_us-gaap_ComprehensiveIncomeNetOfTax" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Comprehensive income (loss)</link:label>
    <link:label id="lab_us-gaap_ComprehensiveIncomeNetOfTax_label_en-US" xlink:label="lab_us-gaap_ComprehensiveIncomeNetOfTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Comprehensive Income (Loss), Net of Tax, Attributable to Parent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ComprehensiveIncomeNetOfTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTax" xlink:to="lab_us-gaap_ComprehensiveIncomeNetOfTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_074146eb-f4ed-4039-a1b2-3d3e0ee0d279_terseLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Disposal Group Name [Domain]</link:label>
    <link:label id="lab_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_label_en-US" xlink:label="lab_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group Name [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain" xlink:to="lab_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperations_d3fa092c-ca4b-41bc-9fa7-b9c0dc1192d3_totalLabel_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperations" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net income (loss) from continuing operations</link:label>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperations_43561d87-31f0-4884-b83e-cdbb4b823cc3_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperations" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Net income (loss) from continuing operations</link:label>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperations_label_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperations" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income (Loss) from Continuing Operations, Net of Tax, Attributable to Parent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperations" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeLossFromContinuingOperations"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperations" xlink:to="lab_us-gaap_IncomeLossFromContinuingOperations" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationLongTermDebtNoncurrent_f1f04034-7aee-4e76-88de-9b7f0d76c279_terseLabel_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationLongTermDebtNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Long-term debt</link:label>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationLongTermDebtNoncurrent_label_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationLongTermDebtNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Long-Term Debt, Noncurrent</link:label>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationLongTermDebtNoncurrent_documentation_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationLongTermDebtNoncurrent" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Long-Term Debt, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationLongTermDebtNoncurrent" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationLongTermDebtNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_DisposalGroupIncludingDiscontinuedOperationLongTermDebtNoncurrent" xlink:to="lab_wprt_DisposalGroupIncludingDiscontinuedOperationLongTermDebtNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherReceivables_d3c35940-133f-4715-b441-f2ddbcb6ced5_terseLabel_en-US" xlink:label="lab_us-gaap_OtherReceivables" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other receivables</link:label>
    <link:label id="lab_us-gaap_OtherReceivables_label_en-US" xlink:label="lab_us-gaap_OtherReceivables" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Receivables</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherReceivables" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherReceivables"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherReceivables" xlink:to="lab_us-gaap_OtherReceivables" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_f7fb8c28-69e4-4d94-ac0e-69e3bd68c9eb_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Employee Service Share-based Compensation, Allocation of Recognized Period Costs</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" 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/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:to="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SecuredDebtMember_886f82db-2ae6-471c-b15f-7423be945396_terseLabel_en-US" xlink:label="lab_us-gaap_SecuredDebtMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Secured Debt</link:label>
    <link:label id="lab_us-gaap_SecuredDebtMember_8a72645c-327a-4a68-8504-0e210fae7640_verboseLabel_en-US" xlink:label="lab_us-gaap_SecuredDebtMember" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Term loan facility (note 12)</link:label>
    <link:label id="lab_us-gaap_SecuredDebtMember_label_en-US" xlink:label="lab_us-gaap_SecuredDebtMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Secured Debt [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SecuredDebtMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SecuredDebtMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SecuredDebtMember" xlink:to="lab_us-gaap_SecuredDebtMember" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_ScheduleOfAllocationOfTotalAssetsTableTextBlock_62291e29-3661-4e8c-a648-52be3c32d49a_terseLabel_en-US" xlink:label="lab_wprt_ScheduleOfAllocationOfTotalAssetsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Allocation of the Total Assets</link:label>
    <link:label id="lab_wprt_ScheduleOfAllocationOfTotalAssetsTableTextBlock_label_en-US" xlink:label="lab_wprt_ScheduleOfAllocationOfTotalAssetsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule Of Allocation Of The Total Assets [Table Text Block]</link:label>
    <link:label id="lab_wprt_ScheduleOfAllocationOfTotalAssetsTableTextBlock_documentation_en-US" xlink:label="lab_wprt_ScheduleOfAllocationOfTotalAssetsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Tabular disclosure of the total assets allocated the reportable segments.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ScheduleOfAllocationOfTotalAssetsTableTextBlock" xlink:href="wprt-20250630.xsd#wprt_ScheduleOfAllocationOfTotalAssetsTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_ScheduleOfAllocationOfTotalAssetsTableTextBlock" xlink:to="lab_wprt_ScheduleOfAllocationOfTotalAssetsTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityCurrent_32f30952-5422-4b07-b99e-6129fcb3b085_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Current portion of operating lease liabilities (note 11)</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityCurrent_c5bf2e27-5a6a-4326-af11-faf1198d998c_verboseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Less: current portion</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" 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/2025/elts/us-gaap-2025.xsd#us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiabilityCurrent" xlink:to="lab_us-gaap_OperatingLeaseLiabilityCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinanceLeaseInterestExpense_e83eea74-9e1e-4291-b04d-c370327c8b07_terseLabel_en-US" xlink:label="lab_us-gaap_FinanceLeaseInterestExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Interest</link:label>
    <link:label id="lab_us-gaap_FinanceLeaseInterestExpense_label_en-US" xlink:label="lab_us-gaap_FinanceLeaseInterestExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finance Lease, Interest Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseInterestExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_FinanceLeaseInterestExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinanceLeaseInterestExpense" xlink:to="lab_us-gaap_FinanceLeaseInterestExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherNotesPayableCurrent_c02b8541-7f04-414b-b003-4c19cd97b663_terseLabel_en-US" xlink:label="lab_us-gaap_OtherNotesPayableCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Due to related parties (note 14)</link:label>
    <link:label id="lab_us-gaap_OtherNotesPayableCurrent_label_en-US" xlink:label="lab_us-gaap_OtherNotesPayableCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Notes Payable, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNotesPayableCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherNotesPayableCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherNotesPayableCurrent" xlink:to="lab_us-gaap_OtherNotesPayableCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentFiscalPeriodFocus_0b21b9eb-9e5d-4f70-984c-0b8a7172ec07_terseLabel_en-US" xlink:label="lab_dei_DocumentFiscalPeriodFocus" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/dei-2025.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_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity_5bf7f394-518a-4ae4-9193-3a7aef0ab416_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Net income (loss) from discontinued operations (note 5)</link:label>
    <link:label id="lab_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity_7b929d6e-82a1-4f9e-bf66-c9baf60ff1b9_totalLabel_en-US" xlink:label="lab_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net income (loss) from discontinued operations</link:label>
    <link:label id="lab_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity_label_en-US" xlink:label="lab_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income (Loss) from Discontinued Operations, Net of Tax, Attributable to Parent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity" xlink:to="lab_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsPerBasicShare_0358e22d-c305-4cba-8e72-455339350f62_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsPerBasicShare" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">From continuing operations - basic (in dollars 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" 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/2025/elts/us-gaap-2025.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_FurnitureAndFixturesMember_58f16cc2-fae4-4673-bab9-f9f78e73e5ae_terseLabel_en-US" xlink:label="lab_us-gaap_FurnitureAndFixturesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.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_AwardTypeAxis_bd1cdb47-0d25-4bbf-a4c1-20e8b9a8212a_terseLabel_en-US" xlink:label="lab_us-gaap_AwardTypeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.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_wprt_ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardIntrinsicValueTableTextBlock_6a1da26f-7757-45a7-a4c1-c4e5ebe59479_verboseLabel_en-US" xlink:label="lab_wprt_ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardIntrinsicValueTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Share Based Compensation Arrangement by Share Based Payment Award Intrinsic Value</link:label>
    <link:label id="lab_wprt_ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardIntrinsicValueTableTextBlock_label_en-US" xlink:label="lab_wprt_ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardIntrinsicValueTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule Of Share Based Compensation Arrangement By Share Based Payment Award Intrinsic Value [Table Text Block]</link:label>
    <link:label id="lab_wprt_ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardIntrinsicValueTableTextBlock_documentation_en-US" xlink:label="lab_wprt_ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardIntrinsicValueTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Tabular disclosure of the intrinsic value of stock option awards and share units.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardIntrinsicValueTableTextBlock" xlink:href="wprt-20250630.xsd#wprt_ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardIntrinsicValueTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardIntrinsicValueTableTextBlock" xlink:to="lab_wprt_ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardIntrinsicValueTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_Assets_d3438524-f55d-42d8-a172-f98a02e99c39_totalLabel_en-US" xlink:label="lab_us-gaap_Assets" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total assets</link:label>
    <link:label id="lab_us-gaap_Assets_dfb6a0ba-1201-4de1-8dfa-6e3eb4231d32_terseLabel_en-US" xlink:label="lab_us-gaap_Assets" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.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_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract_c2e3298b-6125-4289-aedd-c63a804c5555_terseLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Investing activities:</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash Provided by (Used in) Investing Activity, Continuing Operation [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract" xlink:to="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_EquityMethodInvesteeNameDomain_0b831273-1ba6-43c1-913b-cef06a369583_terseLabel_en-US" xlink:label="lab_srt_EquityMethodInvesteeNameDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Investment, Name [Domain]</link:label>
    <link:label id="lab_srt_EquityMethodInvesteeNameDomain_label_en-US" xlink:label="lab_srt_EquityMethodInvesteeNameDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Investment, Name [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_EquityMethodInvesteeNameDomain" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_EquityMethodInvesteeNameDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_EquityMethodInvesteeNameDomain" xlink:to="lab_srt_EquityMethodInvesteeNameDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_1c5a749b-2331-4bdf-b9c5-65c8fa4e05ec_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2029</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, Year Four</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirationsWeightedAverageGrantDateFairValue_f9b043de-2cd1-46f3-8c3a-852eb959912b_verboseLabel_en-US" xlink:label="lab_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirationsWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Forfeited/expired (in Canadian dollars per share)</link:label>
    <link:label id="lab_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirationsWeightedAverageGrantDateFairValue_label_en-US" xlink:label="lab_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirationsWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share Based Compensation Arrangement by Share Based Payment Award, Non Option Equity Instruments, Forfeitures and Expirations, Weighted Average Grant Date Fair Value</link:label>
    <link:label id="lab_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirationsWeightedAverageGrantDateFairValue_documentation_en-US" xlink:label="lab_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirationsWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Weighted average grant-date fair value of non-option equity instruments cancelled/expired.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirationsWeightedAverageGrantDateFairValue" xlink:href="wprt-20250630.xsd#wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirationsWeightedAverageGrantDateFairValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirationsWeightedAverageGrantDateFairValue" xlink:to="lab_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirationsWeightedAverageGrantDateFairValue" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_SegmentGeographicalDomain_1377b848-6013-4db4-b88e-2b7d53061016_terseLabel_en-US" xlink:label="lab_srt_SegmentGeographicalDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/srt-2025.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_InterestExpenseLongTermDebt_0aeee725-eb61-4834-a064-41ec96265f28_terseLabel_en-US" xlink:label="lab_us-gaap_InterestExpenseLongTermDebt" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Interest on long-term debt</link:label>
    <link:label id="lab_us-gaap_InterestExpenseLongTermDebt_label_en-US" xlink:label="lab_us-gaap_InterestExpenseLongTermDebt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Interest Expense, Long-Term Debt</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestExpenseLongTermDebt" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InterestExpenseLongTermDebt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InterestExpenseLongTermDebt" xlink:to="lab_us-gaap_InterestExpenseLongTermDebt" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_6c7baa6d-9001-4ea8-839e-26c34e66dd83_terseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Issuance of common shares on exercise of share units (in shares)</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_label_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Shares Issued, Shares, Share-Based Payment Arrangement, after Forfeiture</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:to="lab_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShortTermDebtTypeDomain_b00353e3-6079-4066-92cc-7dc65c7f58c9_terseLabel_en-US" xlink:label="lab_us-gaap_ShortTermDebtTypeDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Short-term Debt, Type [Domain]</link:label>
    <link:label id="lab_us-gaap_ShortTermDebtTypeDomain_label_en-US" xlink:label="lab_us-gaap_ShortTermDebtTypeDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Short-Term Debt, Type [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermDebtTypeDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShortTermDebtTypeDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShortTermDebtTypeDomain" xlink:to="lab_us-gaap_ShortTermDebtTypeDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_AverageForeignCurrencyExchangeRateTranslation1_9b255859-12ac-4e35-9e54-9cd03dfac68e_terseLabel_en-US" xlink:label="lab_wprt_AverageForeignCurrencyExchangeRateTranslation1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Average foreign currency exchange rate</link:label>
    <link:label id="lab_wprt_AverageForeignCurrencyExchangeRateTranslation1_label_en-US" xlink:label="lab_wprt_AverageForeignCurrencyExchangeRateTranslation1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Average Foreign Currency Exchange Rate Translation1</link:label>
    <link:label id="lab_wprt_AverageForeignCurrencyExchangeRateTranslation1_documentation_en-US" xlink:label="lab_wprt_AverageForeignCurrencyExchangeRateTranslation1" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Average foreign exchange rate used to translate amounts denominated in functional currency to reporting currency.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_AverageForeignCurrencyExchangeRateTranslation1" xlink:href="wprt-20250630.xsd#wprt_AverageForeignCurrencyExchangeRateTranslation1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_AverageForeignCurrencyExchangeRateTranslation1" xlink:to="lab_wprt_AverageForeignCurrencyExchangeRateTranslation1" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationInvestmentsNoncurrent_a9a05191-77e0-4f84-b974-c3c40fc6689a_terseLabel_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationInvestmentsNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Long-term investments</link:label>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationInvestmentsNoncurrent_label_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationInvestmentsNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Investments, Noncurrent</link:label>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationInvestmentsNoncurrent_documentation_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationInvestmentsNoncurrent" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Investments, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationInvestmentsNoncurrent" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationInvestmentsNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_DisposalGroupIncludingDiscontinuedOperationInvestmentsNoncurrent" xlink:to="lab_wprt_DisposalGroupIncludingDiscontinuedOperationInvestmentsNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_eee1b138-073b-4403-891b-75e627315dca_terseLabel_en-US" xlink:label="lab_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Effect of foreign exchange on cash and cash equivalents</link:label>
    <link:label id="lab_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_label_en-US" xlink:label="lab_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Effect of Exchange Rate on Cash, Cash Equivalent, Restricted Cash, and Restricted Cash Equivalent, Continuing Operation</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:to="lab_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConcentrationRiskByTypeAxis_02c43ff5-aa69-4a70-8173-ee1b81f4f877_terseLabel_en-US" xlink:label="lab_us-gaap_ConcentrationRiskByTypeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.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_InventoryDisclosureTextBlock_3a047663-6661-4cbb-8ca2-9a4168a3618d_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.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_IncomeStatementLocationDomain_0f43b20f-1ac9-423c-aeaf-2c90931f144f_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeStatementLocationDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Statement of Income Location, Balance [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" xml:lang="en-US">Statement of Income Location, Balance [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.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_RestrictedStockUnitsRSUMember_690c51f3-8da6-40cc-9d2f-813cc44d2bb9_terseLabel_en-US" xlink:label="lab_us-gaap_RestrictedStockUnitsRSUMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Restricted Stock Units (RSUs)</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" 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/2025/elts/us-gaap-2025.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_RestrictedCashAndCashEquivalents_bf522709-65b5-4025-88c6-25ecffd042ea_terseLabel_en-US" xlink:label="lab_us-gaap_RestrictedCashAndCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Restricted cash</link:label>
    <link:label id="lab_us-gaap_RestrictedCashAndCashEquivalents_label_en-US" xlink:label="lab_us-gaap_RestrictedCashAndCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Restricted Cash and Cash Equivalent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedCashAndCashEquivalents" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RestrictedCashAndCashEquivalents"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestrictedCashAndCashEquivalents" xlink:to="lab_us-gaap_RestrictedCashAndCashEquivalents" xlink:type="arc" order="1"/>
    <link:label id="lab_currency_SEK_9c8712b2-98f2-4889-9be6-dfdf6d8c103b_terseLabel_en-US" xlink:label="lab_currency_SEK" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Swedish Krona</link:label>
    <link:label id="lab_currency_SEK_label_en-US" xlink:label="lab_currency_SEK" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Sweden, Kronor</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_currency_SEK" xlink:href="https://xbrl.sec.gov/currency/2025/currency-2025.xsd#currency_SEK"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_currency_SEK" xlink:to="lab_currency_SEK" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BasisOfAccounting_3c8093a1-0e12-4eaa-b045-b0dc722baedd_terseLabel_en-US" xlink:label="lab_us-gaap_BasisOfAccounting" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Basis of preparation</link:label>
    <link:label id="lab_us-gaap_BasisOfAccounting_label_en-US" xlink:label="lab_us-gaap_BasisOfAccounting" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Basis of Accounting [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BasisOfAccounting" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_BasisOfAccounting"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BasisOfAccounting" xlink:to="lab_us-gaap_BasisOfAccounting" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RelatedPartyMember_b3e77431-8b81-4b15-9fc4-9848cf1058aa_terseLabel_en-US" xlink:label="lab_us-gaap_RelatedPartyMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Related Party</link:label>
    <link:label id="lab_us-gaap_RelatedPartyMember_label_en-US" xlink:label="lab_us-gaap_RelatedPartyMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Related Party [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RelatedPartyMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RelatedPartyMember" xlink:to="lab_us-gaap_RelatedPartyMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockSharesOutstanding_66ed7f3e-39c8-4f82-a0f8-d1d55531143e_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Common shares, shares outstanding (in shares)</link:label>
    <link:label id="lab_us-gaap_CommonStockSharesOutstanding_3da086bf-2a5b-4a0a-9b49-beaa12ff5859_periodStartLabel_en-US" xlink:label="lab_us-gaap_CommonStockSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Balance (in shares)</link:label>
    <link:label id="lab_us-gaap_CommonStockSharesOutstanding_e0303093-0e4a-41ed-ae10-b566662d08d3_periodEndLabel_en-US" xlink:label="lab_us-gaap_CommonStockSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">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" 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/2025/elts/us-gaap-2025.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_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock_b88bda51-2321-4696-bf8d-0cad79801e07_terseLabel_en-US" xlink:label="lab_us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accounts receivable</link:label>
    <link:label id="lab_us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Loans, Notes, Trade and Other Receivables Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock" xlink:to="lab_us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments_438d16fb-bbf4-4bb1-9433-ff894e196d43_terseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Proceeds from sale of investments</link:label>
    <link:label id="lab_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments_label_en-US" xlink:label="lab_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Proceeds from Sale, Maturity and Collection of Investments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments" xlink:to="lab_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccruedIncomeTaxesCurrent_3d649ccc-93e3-42bf-af48-944a063eed9c_terseLabel_en-US" xlink:label="lab_us-gaap_AccruedIncomeTaxesCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Taxes payable</link:label>
    <link:label id="lab_us-gaap_AccruedIncomeTaxesCurrent_label_en-US" xlink:label="lab_us-gaap_AccruedIncomeTaxesCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accrued Income Taxes, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedIncomeTaxesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccruedIncomeTaxesCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccruedIncomeTaxesCurrent" xlink:to="lab_us-gaap_AccruedIncomeTaxesCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_40cf8565-cab4-4479-82dc-a04ad1239e64_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Changes in operating assets and liabilities:</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" xml:lang="en-US">Adjustment to Reconcile Net Income to Cash Provided by (Used in) Operating Activity, 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/2025/elts/us-gaap-2025.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_f208dc44-45e9-49d2-8273-69e1b8872d16_terseLabel_en-US" xlink:label="lab_us-gaap_RetainedEarningsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.xsd#us-gaap_RetainedEarningsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RetainedEarningsMember" xlink:to="lab_us-gaap_RetainedEarningsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_470d62e6-dd8e-4e1e-89a0-5220adb91e76_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Number&#160;of Units</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number of Shares [Roll Forward]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentInterestRateEffectivePercentage_922749b1-3715-4710-90c5-dc5fbeec99cd_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentInterestRateEffectivePercentage" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Effective rate on debt</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentInterestRateEffectivePercentage_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentInterestRateEffectivePercentage" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Instrument, Interest Rate, Effective Percentage</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentInterestRateEffectivePercentage" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtInstrumentInterestRateEffectivePercentage"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentInterestRateEffectivePercentage" xlink:to="lab_us-gaap_DebtInstrumentInterestRateEffectivePercentage" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_label_en-US" xlink:label="lab_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Payment Arrangement [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="lab_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeStatementAbstract_label_en-US" xlink:label="lab_us-gaap_IncomeStatementAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" 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/2025/elts/us-gaap-2025.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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_04c9f189-5c30-4297-ae78-19af6878171c_terseLabel_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cash and cash equivalents (including restricted cash)</link:label>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_235e5a3d-031e-4cee-8ea5-f17ec0578f01_netLabel_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:role="http://www.xbrl.org/2009/role/netLabel" xlink:type="resource" xml:lang="en-US">Cash and cash equivalents from continuing operations, end of period (including restricted cash)</link:label>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_ab47cb2b-6309-48ad-a3f9-9d6ed843d7da_verboseLabel_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Cash and cash equivalents</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" xml:lang="en-US">Cash, Cash Equivalent, Restricted Cash, and Restricted Cash Equivalent, Continuing Operation</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:to="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxExpenseBenefit_a45a778c-e823-45c5-b9fc-6eb7177dc243_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Income tax expense</link:label>
    <link:label id="lab_us-gaap_IncomeTaxExpenseBenefit_e86f92a3-f33e-481d-a0a0-a7ec5265dc6b_verboseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Income tax (recovery) expense</link:label>
    <link:label id="lab_us-gaap_IncomeTaxExpenseBenefit_label_en-US" xlink:label="lab_us-gaap_IncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Tax Expense (Benefit)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit" xlink:to="lab_us-gaap_IncomeTaxExpenseBenefit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare_94e73dff-f48f-4758-994d-979761afe508_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">From discontinued operations - basic (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare_label_en-US" xlink:label="lab_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income (Loss) from Discontinued Operations and Disposal of Discontinued Operations, Net of Tax, Per Basic Share</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare" xlink:to="lab_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationDeferredTaxAssets_3e465219-b298-4aab-8798-7019326ea6e4_terseLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationDeferredTaxAssets" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Deferred income tax assets</link:label>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationDeferredTaxAssets_label_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationDeferredTaxAssets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Deferred Tax Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationDeferredTaxAssets" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationDeferredTaxAssets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationDeferredTaxAssets" xlink:to="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationDeferredTaxAssets" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IntangibleAssetsNetExcludingGoodwill_7d382dcb-195d-47f9-9fe3-c0974b81049d_terseLabel_en-US" xlink:label="lab_us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Intangible assets</link:label>
    <link:label id="lab_us-gaap_IntangibleAssetsNetExcludingGoodwill_label_en-US" xlink:label="lab_us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Intangible Assets, Net (Excluding Goodwill)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:to="lab_us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashCashEquivalentsAndShortTermInvestments_1e612dac-536d-44fc-90e5-2c6fc76287ba_verboseLabel_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsAndShortTermInvestments" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Cash, cash equivalents and short-term investments</link:label>
    <link:label id="lab_us-gaap_CashCashEquivalentsAndShortTermInvestments_label_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsAndShortTermInvestments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash, Cash Equivalents, and Short-Term Investments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsAndShortTermInvestments" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CashCashEquivalentsAndShortTermInvestments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashCashEquivalentsAndShortTermInvestments" xlink:to="lab_us-gaap_CashCashEquivalentsAndShortTermInvestments" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentGross_8c4d484d-9408-403d-a350-4cd94e9b2fd0_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentGross" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cost</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentGross_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentGross" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" 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/2025/elts/us-gaap-2025.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_IncomeLossFromContinuingOperationsPerDilutedShare_9d310f37-be18-4086-9cac-bb0e81c1c020_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">From continuing operations - diluted (in dollars 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" 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/2025/elts/us-gaap-2025.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_DiscontinuedOperationsHeldforsaleMember_43a62b4d-df95-4f2c-8a8f-ddee6daeb236_terseLabel_en-US" xlink:label="lab_us-gaap_DiscontinuedOperationsHeldforsaleMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Discontinued Operations, Held-for-Sale</link:label>
    <link:label id="lab_us-gaap_DiscontinuedOperationsHeldforsaleMember_label_en-US" xlink:label="lab_us-gaap_DiscontinuedOperationsHeldforsaleMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Discontinued Operations, Held-for-Sale [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationsHeldforsaleMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DiscontinuedOperationsHeldforsaleMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DiscontinuedOperationsHeldforsaleMember" xlink:to="lab_us-gaap_DiscontinuedOperationsHeldforsaleMember" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_HeavyDutyOEMMember_1998f6b8-3baf-4ae8-905e-2f5661ddd6e0_terseLabel_en-US" xlink:label="lab_wprt_HeavyDutyOEMMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Heavy-Duty OEM</link:label>
    <link:label id="lab_wprt_HeavyDutyOEMMember_label_en-US" xlink:label="lab_wprt_HeavyDutyOEMMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Heavy-Duty OEM [Member]</link:label>
    <link:label id="lab_wprt_HeavyDutyOEMMember_documentation_en-US" xlink:label="lab_wprt_HeavyDutyOEMMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Heavy-Duty OEM</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_HeavyDutyOEMMember" xlink:href="wprt-20250630.xsd#wprt_HeavyDutyOEMMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_HeavyDutyOEMMember" xlink:to="lab_wprt_HeavyDutyOEMMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract_label_en-US" xlink:label="lab_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Discontinued Operations and Disposal Groups [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract" xlink:to="lab_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract" 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" 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/2025/elts/us-gaap-2025.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_wprt_FinancialInstrumentsDisclosureAbstract_label_en-US" xlink:label="lab_wprt_FinancialInstrumentsDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Financial Instruments Disclosure [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_FinancialInstrumentsDisclosureAbstract" xlink:href="wprt-20250630.xsd#wprt_FinancialInstrumentsDisclosureAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_FinancialInstrumentsDisclosureAbstract" xlink:to="lab_wprt_FinancialInstrumentsDisclosureAbstract" xlink:type="arc" order="1"/>
    <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" 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/2025/elts/us-gaap-2025.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:to="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations_fc69da7e-0a10-42b0-bf28-fcc8b6e63301_terseLabel_en-US" xlink:label="lab_us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Net cash used in investing activities of discontinued operations</link:label>
    <link:label id="lab_us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations_label_en-US" xlink:label="lab_us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash Provided by (Used in) Investing Activity, Discontinued Operation</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations" xlink:to="lab_us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationImpairmentOfLongLivedAssets_99805e53-845c-4b6c-8b57-966280aa947f_negatedTerseLabel_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationImpairmentOfLongLivedAssets" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Impairment of long-lived assets</link:label>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationImpairmentOfLongLivedAssets_label_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationImpairmentOfLongLivedAssets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Impairment Of Long-Lived Assets</link:label>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationImpairmentOfLongLivedAssets_documentation_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationImpairmentOfLongLivedAssets" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Impairment Of Long-Lived Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationImpairmentOfLongLivedAssets" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationImpairmentOfLongLivedAssets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_DisposalGroupIncludingDiscontinuedOperationImpairmentOfLongLivedAssets" xlink:to="lab_wprt_DisposalGroupIncludingDiscontinuedOperationImpairmentOfLongLivedAssets" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GeneralAndAdministrativeExpense_20fa34be-b934-4447-8f45-eec848a22fa5_terseLabel_en-US" xlink:label="lab_us-gaap_GeneralAndAdministrativeExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">General and administrative</link:label>
    <link:label id="lab_us-gaap_GeneralAndAdministrativeExpense_label_en-US" xlink:label="lab_us-gaap_GeneralAndAdministrativeExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">General and Administrative Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_GeneralAndAdministrativeExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GeneralAndAdministrativeExpense" xlink:to="lab_us-gaap_GeneralAndAdministrativeExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SalesRevenueProductLineMember_1d0a75e8-ec5f-4548-a4ca-5a324d078804_terseLabel_en-US" xlink:label="lab_us-gaap_SalesRevenueProductLineMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revenue, Product and Service Benchmark</link:label>
    <link:label id="lab_us-gaap_SalesRevenueProductLineMember_label_en-US" xlink:label="lab_us-gaap_SalesRevenueProductLineMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue, Product and Service Benchmark [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SalesRevenueProductLineMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SalesRevenueProductLineMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SalesRevenueProductLineMember" xlink:to="lab_us-gaap_SalesRevenueProductLineMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongTermInvestments_1af5fe4f-57c3-429a-861e-672eb601eb97_terseLabel_en-US" xlink:label="lab_us-gaap_LongTermInvestments" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Long-term investments (note 8)</link:label>
    <link:label id="lab_us-gaap_LongTermInvestments_eb456a17-1a9e-477b-b75f-cb2c17935f94_verboseLabel_en-US" xlink:label="lab_us-gaap_LongTermInvestments" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Long-term investments</link:label>
    <link:label id="lab_us-gaap_LongTermInvestments_label_en-US" xlink:label="lab_us-gaap_LongTermInvestments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Long-Term Investments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermInvestments" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LongTermInvestments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermInvestments" xlink:to="lab_us-gaap_LongTermInvestments" 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" 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/2025/elts/us-gaap-2025.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_SubsequentEventMember_3947994d-cd58-45c4-9f0e-fcf269e421b2_terseLabel_en-US" xlink:label="lab_us-gaap_SubsequentEventMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.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_LeaseCost_34afda2a-d9c1-4e68-9350-2ea879fda068_totalLabel_en-US" xlink:label="lab_us-gaap_LeaseCost" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total lease cost</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" 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/2025/elts/us-gaap-2025.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_CostOfSalesMember_65b40746-fb1c-41dd-96d8-4ea5976eed32_terseLabel_en-US" xlink:label="lab_us-gaap_CostOfSalesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cost of revenue</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" 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/2025/elts/us-gaap-2025.xsd#us-gaap_CostOfSalesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CostOfSalesMember" xlink:to="lab_us-gaap_CostOfSalesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_Goodwill_b79ce255-e0b7-4559-aaa4-368910085d54_terseLabel_en-US" xlink:label="lab_us-gaap_Goodwill" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Goodwill</link:label>
    <link:label id="lab_us-gaap_Goodwill_label_en-US" xlink:label="lab_us-gaap_Goodwill" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Goodwill</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_Goodwill"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Goodwill" xlink:to="lab_us-gaap_Goodwill" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationResearchAndDevelopmentExpense_8d5ed16f-5a1a-4c40-8707-1abcb1a09bdb_terseLabel_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationResearchAndDevelopmentExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Research and development</link:label>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationResearchAndDevelopmentExpense_label_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationResearchAndDevelopmentExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Research And Development Expense</link:label>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationResearchAndDevelopmentExpense_documentation_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationResearchAndDevelopmentExpense" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Research And Development Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationResearchAndDevelopmentExpense" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationResearchAndDevelopmentExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_DisposalGroupIncludingDiscontinuedOperationResearchAndDevelopmentExpense" xlink:to="lab_wprt_DisposalGroupIncludingDiscontinuedOperationResearchAndDevelopmentExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfEquityMethodInvestmentsLineItems_19ba2db6-bdfb-422a-96a3-30d0d6725a18_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfEquityMethodInvestmentsLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Equity Method Investments [Line Items]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfEquityMethodInvestmentsLineItems_label_en-US" xlink:label="lab_us-gaap_ScheduleOfEquityMethodInvestmentsLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Equity Method Investments [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEquityMethodInvestmentsLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfEquityMethodInvestmentsLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfEquityMethodInvestmentsLineItems" xlink:to="lab_us-gaap_ScheduleOfEquityMethodInvestmentsLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LeaseCostTableTextBlock_912dbabc-e75b-4256-8ad4-5b368b0a541c_terseLabel_en-US" xlink:label="lab_us-gaap_LeaseCostTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Component of Lease Cost</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" 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/2025/elts/us-gaap-2025.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_StatementEquityComponentsAxis_96276545-6426-43a0-bda9-2be451690cad_terseLabel_en-US" xlink:label="lab_us-gaap_StatementEquityComponentsAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementEquityComponentsAxis" xlink:to="lab_us-gaap_StatementEquityComponentsAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentLineItems_99fce9a7-eeed-4391-a0eb-cd7a190a9ebd_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.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_NatureOfOperations_af6ea3f5-3d38-44e0-aeeb-d2290fbcf407_terseLabel_en-US" xlink:label="lab_us-gaap_NatureOfOperations" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Company organization and 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" 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/2025/elts/us-gaap-2025.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_CashProvidedByUsedInFinancingActivitiesDiscontinuedOperations_cf456f71-a40b-4912-ae0b-39f14d3d92cb_terseLabel_en-US" xlink:label="lab_us-gaap_CashProvidedByUsedInFinancingActivitiesDiscontinuedOperations" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Net cash used in financing activities of discontinued operations</link:label>
    <link:label id="lab_us-gaap_CashProvidedByUsedInFinancingActivitiesDiscontinuedOperations_label_en-US" xlink:label="lab_us-gaap_CashProvidedByUsedInFinancingActivitiesDiscontinuedOperations" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash Provided by (Used in) Financing Activity, Discontinued Operation</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashProvidedByUsedInFinancingActivitiesDiscontinuedOperations" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CashProvidedByUsedInFinancingActivitiesDiscontinuedOperations"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashProvidedByUsedInFinancingActivitiesDiscontinuedOperations" xlink:to="lab_us-gaap_CashProvidedByUsedInFinancingActivitiesDiscontinuedOperations" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NumberOfReportableSegments_a1dcb700-0a79-44cb-a23b-e551ac5a4aff_terseLabel_en-US" xlink:label="lab_us-gaap_NumberOfReportableSegments" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Number of reportable segments</link:label>
    <link:label id="lab_us-gaap_NumberOfReportableSegments_label_en-US" xlink:label="lab_us-gaap_NumberOfReportableSegments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Number of Reportable Segments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NumberOfReportableSegments" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NumberOfReportableSegments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NumberOfReportableSegments" xlink:to="lab_us-gaap_NumberOfReportableSegments" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAssetNoncurrent_56f87150-9aa6-4a85-9352-8d5e4856378b_terseLabel_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAssetNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating lease right-of-use asset</link:label>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAssetNoncurrent_label_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAssetNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Operating Lease, Right-Of-Use Asset, Noncurrent</link:label>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAssetNoncurrent_documentation_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAssetNoncurrent" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Operating Lease, Right-Of-Use Asset, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAssetNoncurrent" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAssetNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAssetNoncurrent" xlink:to="lab_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAssetNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SupplementalCashFlowInformationAbstract_3b68cc8f-6b8e-45d2-a324-b4d68d4b9198_terseLabel_en-US" xlink:label="lab_us-gaap_SupplementalCashFlowInformationAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Supplementary information</link:label>
    <link:label id="lab_us-gaap_SupplementalCashFlowInformationAbstract_label_en-US" xlink:label="lab_us-gaap_SupplementalCashFlowInformationAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Supplemental Cash Flow Information [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SupplementalCashFlowInformationAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SupplementalCashFlowInformationAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SupplementalCashFlowInformationAbstract" xlink:to="lab_us-gaap_SupplementalCashFlowInformationAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_ContractualObligationFiscalYearMaturityScheduleTableTextBlock_0da0d149-42fa-4dff-bbd7-cd5af937a755_terseLabel_en-US" xlink:label="lab_srt_ContractualObligationFiscalYearMaturityScheduleTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Contractual Obligation, Fiscal Year Maturity Schedule</link:label>
    <link:label id="lab_srt_ContractualObligationFiscalYearMaturityScheduleTableTextBlock_label_en-US" xlink:label="lab_srt_ContractualObligationFiscalYearMaturityScheduleTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Contractual Obligation, Fiscal Year Maturity [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ContractualObligationFiscalYearMaturityScheduleTableTextBlock" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ContractualObligationFiscalYearMaturityScheduleTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ContractualObligationFiscalYearMaturityScheduleTableTextBlock" xlink:to="lab_srt_ContractualObligationFiscalYearMaturityScheduleTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent_01382b63-ce65-4620-998e-4608049fc5e3_terseLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Non-current assets held for sale (note 5)</link:label>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent_39b79888-92c1-4c09-846d-e2c9a2e76689_totalLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Long-term assets classified as held for sale</link:label>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent_label_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Assets, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent" xlink:to="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_currency_EUR_1c3d8c9e-2d1a-4cbb-883d-329de4ecda33_terseLabel_en-US" xlink:label="lab_currency_EUR" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Euro</link:label>
    <link:label id="lab_currency_EUR_label_en-US" xlink:label="lab_currency_EUR" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Euro Member Countries, Euro</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_currency_EUR" xlink:href="https://xbrl.sec.gov/currency/2025/currency-2025.xsd#currency_EUR"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_currency_EUR" xlink:to="lab_currency_EUR" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RelatedPartyDomain_bbb72fe7-65f4-47a1-b16d-5ab296e2f1f9_terseLabel_en-US" xlink:label="lab_us-gaap_RelatedPartyDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Related and Nonrelated Parties [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" xml:lang="en-US">Related and Nonrelated Parties [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.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_us-gaap_LiabilitiesCurrent_ec8b9c19-fa90-49eb-8dbb-4a4a88e07134_totalLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.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_wprt_LightDutyMember_236c6495-52ae-4100-8b90-4d0d61d9f04d_terseLabel_en-US" xlink:label="lab_wprt_LightDutyMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Light-Duty</link:label>
    <link:label id="lab_wprt_LightDutyMember_b610028f-aa6e-4771-85a4-6877eff77b78_verboseLabel_en-US" xlink:label="lab_wprt_LightDutyMember" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Light-Duty (Held-for-sale)</link:label>
    <link:label id="lab_wprt_LightDutyMember_label_en-US" xlink:label="lab_wprt_LightDutyMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Light-Duty [Member]</link:label>
    <link:label id="lab_wprt_LightDutyMember_documentation_en-US" xlink:label="lab_wprt_LightDutyMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Light-Duty</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_LightDutyMember" xlink:href="wprt-20250630.xsd#wprt_LightDutyMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_LightDutyMember" xlink:to="lab_wprt_LightDutyMember" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationIncomeLossFromEquityMethodInvestments_30a45e77-85c5-455e-853a-03192fa57eaf_terseLabel_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationIncomeLossFromEquityMethodInvestments" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Income from investment accounted for by the equity method</link:label>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationIncomeLossFromEquityMethodInvestments_label_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationIncomeLossFromEquityMethodInvestments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Income (Loss) From Equity Method Investments</link:label>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationIncomeLossFromEquityMethodInvestments_documentation_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationIncomeLossFromEquityMethodInvestments" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Income (Loss) From Equity Method Investments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationIncomeLossFromEquityMethodInvestments" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationIncomeLossFromEquityMethodInvestments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_DisposalGroupIncludingDiscontinuedOperationIncomeLossFromEquityMethodInvestments" xlink:to="lab_wprt_DisposalGroupIncludingDiscontinuedOperationIncomeLossFromEquityMethodInvestments" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ResearchAndDevelopmentExpenseMember_7544197e-a435-4f40-94b2-b1e28d61e322_verboseLabel_en-US" xlink:label="lab_us-gaap_ResearchAndDevelopmentExpenseMember" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Research and 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" 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/2025/elts/us-gaap-2025.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_AdditionalPaidInCapitalCommonStock_2711fc8f-f6d2-4d87-ab41-afea4c020e4c_terseLabel_en-US" xlink:label="lab_us-gaap_AdditionalPaidInCapitalCommonStock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.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_InterestPaidNet_c06acdff-6ebb-44f3-baee-45c62736a78e_terseLabel_en-US" xlink:label="lab_us-gaap_InterestPaidNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Interest paid</link:label>
    <link:label id="lab_us-gaap_InterestPaidNet_label_en-US" xlink:label="lab_us-gaap_InterestPaidNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Interest Paid, Excluding Capitalized Interest, Operating Activity</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestPaidNet" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InterestPaidNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InterestPaidNet" xlink:to="lab_us-gaap_InterestPaidNet" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentFiscalYearFocus_180a3a7f-543e-4067-b3bc-da3d743e9f10_terseLabel_en-US" xlink:label="lab_dei_DocumentFiscalYearFocus" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/dei-2025.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_BasisOfAccountingPolicyPolicyTextBlock_bbcc5abf-4c33-49ae-9482-49c1a0a69309_terseLabel_en-US" xlink:label="lab_us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.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_SubstantialDoubtAboutGoingConcernTextBlock_58bf11de-e771-46f5-b2e3-51fad02066f0_terseLabel_en-US" xlink:label="lab_us-gaap_SubstantialDoubtAboutGoingConcernTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Liquidity and going concern</link:label>
    <link:label id="lab_us-gaap_SubstantialDoubtAboutGoingConcernTextBlock_label_en-US" xlink:label="lab_us-gaap_SubstantialDoubtAboutGoingConcernTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Substantial Doubt about Going Concern [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubstantialDoubtAboutGoingConcernTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SubstantialDoubtAboutGoingConcernTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubstantialDoubtAboutGoingConcernTextBlock" xlink:to="lab_us-gaap_SubstantialDoubtAboutGoingConcernTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseRightOfUseAsset_32a3436b-1377-4683-a09c-fe9efffde99e_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseRightOfUseAsset" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.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_wprt_SalesOfGoodsServicesAndOtherIncomeMember_2f107710-28da-4e3e-bb27-6e5903c35add_terseLabel_en-US" xlink:label="lab_wprt_SalesOfGoodsServicesAndOtherIncomeMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Sales of goods, services, and other income</link:label>
    <link:label id="lab_wprt_SalesOfGoodsServicesAndOtherIncomeMember_label_en-US" xlink:label="lab_wprt_SalesOfGoodsServicesAndOtherIncomeMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Sales of Goods, Services and Other Income [Member]</link:label>
    <link:label id="lab_wprt_SalesOfGoodsServicesAndOtherIncomeMember_documentation_en-US" xlink:label="lab_wprt_SalesOfGoodsServicesAndOtherIncomeMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Sales of Goods, Services and Other Income</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_SalesOfGoodsServicesAndOtherIncomeMember" xlink:href="wprt-20250630.xsd#wprt_SalesOfGoodsServicesAndOtherIncomeMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_SalesOfGoodsServicesAndOtherIncomeMember" xlink:to="lab_wprt_SalesOfGoodsServicesAndOtherIncomeMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeAxis_94a3d996-71d4-4b4c-8fdc-73ef70a3a529_terseLabel_en-US" xlink:label="lab_us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Equity Method Investment, Nonconsolidated Investee [Axis]</link:label>
    <link:label id="lab_us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeAxis_label_en-US" xlink:label="lab_us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity Method Investment, Nonconsolidated Investee [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeAxis" xlink:to="lab_us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract_4d298002-b0ba-4994-a43b-27771abe120b_terseLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating activities:</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash Provided by (Used in) Operating Activity, Continuing Operation [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract" xlink:to="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercisedWeightedAverageGrantDateFairValue_51083a71-96ec-4dd2-bbf2-b234f8c3bc1c_verboseLabel_en-US" xlink:label="lab_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercisedWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Vested and exercised (in Canadian dollars per share)</link:label>
    <link:label id="lab_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercisedWeightedAverageGrantDateFairValue_label_en-US" xlink:label="lab_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercisedWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share Based Compensation Arrangement by Share Based Payment Award Non Option Equity Instruments Exercised Weighted Average Grant Date Fair Value</link:label>
    <link:label id="lab_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercisedWeightedAverageGrantDateFairValue_documentation_en-US" xlink:label="lab_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercisedWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Weighted average grant-date fair value of non-option equity instruments exercised.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercisedWeightedAverageGrantDateFairValue" xlink:href="wprt-20250630.xsd#wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercisedWeightedAverageGrantDateFairValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercisedWeightedAverageGrantDateFairValue" xlink:to="lab_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercisedWeightedAverageGrantDateFairValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_8cbba16e-9296-4752-8d8a-4db21d56a7a5_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Compensation cost not yet recognized, period for recognition (in years)</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" 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/2025/elts/us-gaap-2025.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_EquityAbstract_dff7fd27-2935-4d45-91d7-e7798cefc0bc_terseLabel_en-US" xlink:label="lab_us-gaap_EquityAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share capital (note 13):</link:label>
    <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" 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/2025/elts/us-gaap-2025.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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_c892a9b1-154b-4db7-8394-175bf9e1c9c4_verboseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Exercisable</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercisable, Intrinsic Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SegmentReportingDisclosureTextBlock_c4f2431b-8f95-4530-8858-e84aac9bc79f_terseLabel_en-US" xlink:label="lab_us-gaap_SegmentReportingDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Segment information</link:label>
    <link:label id="lab_us-gaap_SegmentReportingDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_SegmentReportingDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Segment Reporting Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SegmentReportingDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SegmentReportingDisclosureTextBlock" xlink:to="lab_us-gaap_SegmentReportingDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_IncomeLossFromContinuingOperationsBeforeIncomeTaxesNoncontrollingInterestAdjustmentForRounding_d68f1b2e-ec82-41ce-9664-80dbd6dde68c_terseLabel_en-US" xlink:label="lab_wprt_IncomeLossFromContinuingOperationsBeforeIncomeTaxesNoncontrollingInterestAdjustmentForRounding" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Loss before income taxes in continuing operations</link:label>
    <link:label id="lab_wprt_IncomeLossFromContinuingOperationsBeforeIncomeTaxesNoncontrollingInterestAdjustmentForRounding_label_en-US" xlink:label="lab_wprt_IncomeLossFromContinuingOperationsBeforeIncomeTaxesNoncontrollingInterestAdjustmentForRounding" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest, Adjustment for Rounding</link:label>
    <link:label id="lab_wprt_IncomeLossFromContinuingOperationsBeforeIncomeTaxesNoncontrollingInterestAdjustmentForRounding_documentation_en-US" xlink:label="lab_wprt_IncomeLossFromContinuingOperationsBeforeIncomeTaxesNoncontrollingInterestAdjustmentForRounding" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest, Adjustment for Rounding</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_IncomeLossFromContinuingOperationsBeforeIncomeTaxesNoncontrollingInterestAdjustmentForRounding" xlink:href="wprt-20250630.xsd#wprt_IncomeLossFromContinuingOperationsBeforeIncomeTaxesNoncontrollingInterestAdjustmentForRounding"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_IncomeLossFromContinuingOperationsBeforeIncomeTaxesNoncontrollingInterestAdjustmentForRounding" xlink:to="lab_wprt_IncomeLossFromContinuingOperationsBeforeIncomeTaxesNoncontrollingInterestAdjustmentForRounding" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent_f43edf7a-7670-4077-87d1-a934b94a8d00_terseLabel_en-US" xlink:label="lab_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Current portion of long-term debt (note 12)</link:label>
    <link:label id="lab_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent_c3a0cf8b-17ff-4926-b7bb-3f96345dd85d_verboseLabel_en-US" xlink:label="lab_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Current portion of long-term debt</link:label>
    <link:label id="lab_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent_label_en-US" xlink:label="lab_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Long-Term Debt and Lease Obligation, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent" xlink:to="lab_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityCurrent_6baf8603-ba1d-4f6e-81c3-66a136f4bf41_terseLabel_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Current portion of operating lease liabilities</link:label>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityCurrent_label_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Operating Lease, Liability, Current</link:label>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityCurrent_documentation_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Operating Lease, Liability, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityCurrent" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityCurrent" xlink:to="lab_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtAndCapitalLeaseObligations_ae90ce76-65c0-47ab-9255-39421e245ce1_totalLabel_en-US" xlink:label="lab_us-gaap_DebtAndCapitalLeaseObligations" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Debt and capital lease obligations</link:label>
    <link:label id="lab_us-gaap_DebtAndCapitalLeaseObligations_label_en-US" xlink:label="lab_us-gaap_DebtAndCapitalLeaseObligations" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt and Lease Obligation</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtAndCapitalLeaseObligations" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtAndCapitalLeaseObligations"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtAndCapitalLeaseObligations" xlink:to="lab_us-gaap_DebtAndCapitalLeaseObligations" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis_f9bbe514-ac2f-46a0-8959-fd8d08e75c8b_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Long-Lived Tangible Asset [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" 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/2025/elts/us-gaap-2025.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherCommitmentsLineItems_bba09961-580b-4ed7-89ca-e94f47009266_terseLabel_en-US" xlink:label="lab_us-gaap_OtherCommitmentsLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other Commitments [Line Items]</link:label>
    <link:label id="lab_us-gaap_OtherCommitmentsLineItems_label_en-US" xlink:label="lab_us-gaap_OtherCommitmentsLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Commitments [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherCommitmentsLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherCommitmentsLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherCommitmentsLineItems" xlink:to="lab_us-gaap_OtherCommitmentsLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_fd7bff6f-f04e-4615-b65e-41dab3aa9304_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.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_DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold_3783f2af-172a-4d82-91ae-6a2426b6b5dd_terseLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cost of revenue</link:label>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold_label_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Costs of Goods Sold</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold" xlink:to="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_ContractualObligationsTypeAxis_e5d12dfc-479a-458d-ad52-6261b84cd4eb_terseLabel_en-US" xlink:label="lab_wprt_ContractualObligationsTypeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Contractual Obligations Type [Axis]</link:label>
    <link:label id="lab_wprt_ContractualObligationsTypeAxis_label_en-US" xlink:label="lab_wprt_ContractualObligationsTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Contractual Obligations Type [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ContractualObligationsTypeAxis" xlink:href="wprt-20250630.xsd#wprt_ContractualObligationsTypeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_ContractualObligationsTypeAxis" xlink:to="lab_wprt_ContractualObligationsTypeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_ScheduleOfForeignCurrencyLineItems_bd676d94-0e7f-4391-8d27-41bd433ef35b_terseLabel_en-US" xlink:label="lab_wprt_ScheduleOfForeignCurrencyLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Foreign Currency [Line Items]</link:label>
    <link:label id="lab_wprt_ScheduleOfForeignCurrencyLineItems_label_en-US" xlink:label="lab_wprt_ScheduleOfForeignCurrencyLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Foreign Currency [Line Items]</link:label>
    <link:label id="lab_wprt_ScheduleOfForeignCurrencyLineItems_documentation_en-US" xlink:label="lab_wprt_ScheduleOfForeignCurrencyLineItems" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Schedule of Foreign Currency [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ScheduleOfForeignCurrencyLineItems" xlink:href="wprt-20250630.xsd#wprt_ScheduleOfForeignCurrencyLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_ScheduleOfForeignCurrencyLineItems" xlink:to="lab_wprt_ScheduleOfForeignCurrencyLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DepreciationDepletionAndAmortization_4226ab36-9c84-4541-ac53-19fd28641e8d_netLabel_en-US" xlink:label="lab_us-gaap_DepreciationDepletionAndAmortization" xlink:role="http://www.xbrl.org/2009/role/netLabel" xlink:type="resource" xml:lang="en-US">Depreciation and amortization</link:label>
    <link:label id="lab_us-gaap_DepreciationDepletionAndAmortization_fabd4273-95a2-4159-987d-75ab7fb57f18_terseLabel_en-US" xlink:label="lab_us-gaap_DepreciationDepletionAndAmortization" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Add back: Depreciation &amp; amortization</link:label>
    <link:label id="lab_us-gaap_DepreciationDepletionAndAmortization_label_en-US" xlink:label="lab_us-gaap_DepreciationDepletionAndAmortization" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Depreciation, Depletion and Amortization</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DepreciationDepletionAndAmortization" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DepreciationDepletionAndAmortization"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DepreciationDepletionAndAmortization" xlink:to="lab_us-gaap_DepreciationDepletionAndAmortization" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherAssetsNoncurrent_d7483308-b5a6-447a-aa2c-30909cce6f2a_terseLabel_en-US" xlink:label="lab_us-gaap_OtherAssetsNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other long-term assets</link:label>
    <link:label id="lab_us-gaap_OtherAssetsNoncurrent_label_en-US" xlink:label="lab_us-gaap_OtherAssetsNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Assets, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAssetsNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherAssetsNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherAssetsNoncurrent" xlink:to="lab_us-gaap_OtherAssetsNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityCentralIndexKey_47f0d10d-ffe8-46be-b973-e31d22dc2715_terseLabel_en-US" xlink:label="lab_dei_EntityCentralIndexKey" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/dei-2025.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_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock_a90cfaa7-65cb-41e6-b5d9-f6ab91811f48_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Maturities of Long-term Debt</link:label>
    <link:label id="lab_us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Maturities of Long-Term Debt [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryFinishedGoods_d52bff76-b652-4cfa-929a-5da230530386_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryFinishedGoods" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.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_ScheduleOfSegmentReportingInformationBySegmentTable_f8f5afb3-12b9-418f-8f90-4599f8287a32_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Segment Reporting Information, by Segment [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Segment Reporting Information, by Segment [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:to="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ContractWithCustomerLiabilityCurrent_a8a10cac-ed5a-4b46-b522-7361e8dbd4e7_terseLabel_en-US" xlink:label="lab_us-gaap_ContractWithCustomerLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.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_FinancialInstrumentsDisclosureTextBlock_6d0ffd4e-de2b-4736-891b-f1a348267394_verboseLabel_en-US" xlink:label="lab_us-gaap_FinancialInstrumentsDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Financial instruments</link:label>
    <link:label id="lab_us-gaap_FinancialInstrumentsDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_FinancialInstrumentsDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Financial Instruments Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinancialInstrumentsDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_FinancialInstrumentsDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinancialInstrumentsDisclosureTextBlock" xlink:to="lab_us-gaap_FinancialInstrumentsDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementBusinessSegmentsAxis_122f8efa-9bb2-43da-8cef-983a7027d8a0_terseLabel_en-US" xlink:label="lab_us-gaap_StatementBusinessSegmentsAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Segments [Axis]</link:label>
    <link:label id="lab_us-gaap_StatementBusinessSegmentsAxis_label_en-US" xlink:label="lab_us-gaap_StatementBusinessSegmentsAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Segments [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis" xlink:to="lab_us-gaap_StatementBusinessSegmentsAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProductWarrantyAccrualClassifiedCurrent_bc0250e6-0a3c-43d4-8de7-b37af71c8ca4_terseLabel_en-US" xlink:label="lab_us-gaap_ProductWarrantyAccrualClassifiedCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Current portion of warranty liability</link:label>
    <link:label id="lab_us-gaap_ProductWarrantyAccrualClassifiedCurrent_label_en-US" xlink:label="lab_us-gaap_ProductWarrantyAccrualClassifiedCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Product Warranty Accrual, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyAccrualClassifiedCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ProductWarrantyAccrualClassifiedCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProductWarrantyAccrualClassifiedCurrent" xlink:to="lab_us-gaap_ProductWarrantyAccrualClassifiedCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_EuropeMember_7b3a05c7-5609-41b8-9c14-fa4dd2b444dd_terseLabel_en-US" xlink:label="lab_srt_EuropeMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Europe</link:label>
    <link:label id="lab_srt_EuropeMember_label_en-US" xlink:label="lab_srt_EuropeMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Europe [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_EuropeMember" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_EuropeMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_EuropeMember" xlink:to="lab_srt_EuropeMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SubsequentEventTypeAxis_ba6a492b-798e-46a6-9120-f15211cd0e7b_terseLabel_en-US" xlink:label="lab_us-gaap_SubsequentEventTypeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.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_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_059f9e68-279b-40a0-a7bf-9a8cd65d7e6c_terseLabel_en-US" xlink:label="lab_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share capital, stock options and other stock-based plans</link:label>
    <link:label id="lab_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_label_en-US" xlink:label="lab_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Payment Arrangement [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:to="lab_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_currency_CNY_ceefd65e-e0cc-42a5-a4cb-eccbfb0a945e_terseLabel_en-US" xlink:label="lab_currency_CNY" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">RMB</link:label>
    <link:label id="lab_currency_CNY_label_en-US" xlink:label="lab_currency_CNY" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">China, Yuan Renminbi</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_currency_CNY" xlink:href="https://xbrl.sec.gov/currency/2025/currency-2025.xsd#currency_CNY"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_currency_CNY" xlink:to="lab_currency_CNY" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration_a9c9fe12-7a40-4118-8f55-30668a886a75_terseLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Net proceeds from sale</link:label>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration_label_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Consideration</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration" xlink:to="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AssetsAbstract_329fda15-db5b-4cd2-a6ef-d016fbd8388a_terseLabel_en-US" xlink:label="lab_us-gaap_AssetsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.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_CreditFacilityAxis_475600b6-f6e7-4834-a05a-49ca80a32e8a_terseLabel_en-US" xlink:label="lab_us-gaap_CreditFacilityAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.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_DebtInstrumentAxis_9e919818-189d-4dc8-9756-155c8d625435_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentAxis" xlink:to="lab_us-gaap_DebtInstrumentAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents_40698747-5903-457f-8ea6-747e312274de_verboseLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Cash and cash equivalents classified as held for sale</link:label>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents_57329dc1-d1f4-44a4-bfe4-db22446066e7_terseLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cash</link:label>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents_label_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Cash and Cash Equivalents</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents" xlink:to="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CreditFacilityDomain_371881ff-ca3c-43ea-a09d-fecafc44d8e2_terseLabel_en-US" xlink:label="lab_us-gaap_CreditFacilityDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.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_wprt_OperatingLeaseExpensesMember_676b91a7-a1f9-4fc0-a8a8-a9c373dc9bf4_verboseLabel_en-US" xlink:label="lab_wprt_OperatingLeaseExpensesMember" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Operating lease obligations (note 11)</link:label>
    <link:label id="lab_wprt_OperatingLeaseExpensesMember_label_en-US" xlink:label="lab_wprt_OperatingLeaseExpensesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Lease Expenses [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_OperatingLeaseExpensesMember" xlink:href="wprt-20250630.xsd#wprt_OperatingLeaseExpensesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_OperatingLeaseExpensesMember" xlink:to="lab_wprt_OperatingLeaseExpensesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ResearchAndDevelopmentExpense_5f8783d9-550b-4f2b-bf04-69d6927ae166_terseLabel_en-US" xlink:label="lab_us-gaap_ResearchAndDevelopmentExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Research and 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" 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/2025/elts/us-gaap-2025.xsd#us-gaap_ResearchAndDevelopmentExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ResearchAndDevelopmentExpense" xlink:to="lab_us-gaap_ResearchAndDevelopmentExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirations_a0a39808-d633-4315-bed7-13215e5f2e37_negatedLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirations" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Forfeited/expired (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirations_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirations" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Non-Option Equity Instruments, Forfeitures and Expirations</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirations" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirations"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirations" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirations" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember_35597842-171b-42c9-ae26-67ff9f7ef3b1_terseLabel_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.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_AllowanceForDoubtfulAccountsReceivableCurrent_0ea855c4-c507-4974-9164-c520edb1be8e_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Allowance for expected credit losses</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" 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/2025/elts/us-gaap-2025.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_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_12ecf94e-9205-458c-85b5-e07806e3e46b_terseLabel_en-US" xlink:label="lab_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Investment, Name [Axis]</link:label>
    <link:label id="lab_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_label_en-US" xlink:label="lab_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Investment, Name [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:to="lab_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss_7547386e-0138-466d-9001-440d3d07613c_totalLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Income from discontinued operations</link:label>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss_label_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Operating Income (Loss)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss" xlink:to="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityNoncurrent_2058b260-1e46-4f10-a5c3-7723d0c9d4e5_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Long-term operating lease liabilities (note 11)</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" 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/2025/elts/us-gaap-2025.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:to="lab_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent_c70c4350-6b05-4ab2-be05-9eb02f25f31f_terseLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Property, plant, and equipment</link:label>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent_label_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Property, Plant and Equipment, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent" xlink:to="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_AmericasMember_0043605f-4fbc-49ee-b754-067ac4740ccc_terseLabel_en-US" xlink:label="lab_srt_AmericasMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Americas</link:label>
    <link:label id="lab_srt_AmericasMember_label_en-US" xlink:label="lab_srt_AmericasMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Americas [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_AmericasMember" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_AmericasMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_AmericasMember" xlink:to="lab_srt_AmericasMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_8e7eff28-2f4a-45f6-8224-3bfb1714864f_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [Line Items]</link:label>
    <link:label id="lab_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_label_en-US" xlink:label="lab_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="lab_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DepreciationAmortizationAndAccretionNet_2bcc99d7-a77d-4df4-9022-f672c0e599d6_terseLabel_en-US" xlink:label="lab_us-gaap_DepreciationAmortizationAndAccretionNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Depreciation and amortization</link:label>
    <link:label id="lab_us-gaap_DepreciationAmortizationAndAccretionNet_label_en-US" xlink:label="lab_us-gaap_DepreciationAmortizationAndAccretionNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Depreciation, Amortization and Accretion, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DepreciationAmortizationAndAccretionNet" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DepreciationAmortizationAndAccretionNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DepreciationAmortizationAndAccretionNet" xlink:to="lab_us-gaap_DepreciationAmortizationAndAccretionNet" xlink:type="arc" order="1"/>
    <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" 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/2025/elts/us-gaap-2025.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_dei_EntityRegistrantName_d867c5ac-8da8-405a-8f35-c7b2aa4712d6_terseLabel_en-US" xlink:label="lab_dei_EntityRegistrantName" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/dei-2025.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_wprt_CespiraCanadaLPMember_b66b36b4-ada6-4b61-ac8e-aef8758a4b32_terseLabel_en-US" xlink:label="lab_wprt_CespiraCanadaLPMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cespira Canada LP</link:label>
    <link:label id="lab_wprt_CespiraCanadaLPMember_label_en-US" xlink:label="lab_wprt_CespiraCanadaLPMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cespira Canada LP [Member]</link:label>
    <link:label id="lab_wprt_CespiraCanadaLPMember_documentation_en-US" xlink:label="lab_wprt_CespiraCanadaLPMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Cespira Canada LP</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_CespiraCanadaLPMember" xlink:href="wprt-20250630.xsd#wprt_CespiraCanadaLPMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_CespiraCanadaLPMember" xlink:to="lab_wprt_CespiraCanadaLPMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation_17a24569-9b6a-43d1-b47b-aceb803cd47d_totalLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total liabilities classified as held for sale</link:label>
    <link:label id="lab_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation_label_en-US" xlink:label="lab_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Liabilities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation" xlink:to="lab_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfDebtInstrumentsTextBlock_d11bab0f-119d-417a-a60a-524063c38674_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfDebtInstrumentsTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Long-term Debt Instruments</link:label>
    <link:label id="lab_us-gaap_ScheduleOfDebtInstrumentsTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfDebtInstrumentsTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Long-Term Debt Instruments [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDebtInstrumentsTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfDebtInstrumentsTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfDebtInstrumentsTextBlock" xlink:to="lab_us-gaap_ScheduleOfDebtInstrumentsTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualCurrent_199360d2-06db-490d-95d2-751cd324763c_terseLabel_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Current portion of warranty liabilities</link:label>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualCurrent_label_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Product Warranty Accrual, Current</link:label>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualCurrent_documentation_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualCurrent" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Product Warranty Accrual, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualCurrent" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualCurrent" xlink:to="lab_wprt_DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CostsAndExpenses_1a38ccbd-b3ee-446b-905a-d51d746a1b4d_totalLabel_en-US" xlink:label="lab_us-gaap_CostsAndExpenses" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Operating expenses</link:label>
    <link:label id="lab_us-gaap_CostsAndExpenses_label_en-US" xlink:label="lab_us-gaap_CostsAndExpenses" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Costs and Expenses</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostsAndExpenses" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CostsAndExpenses"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CostsAndExpenses" xlink:to="lab_us-gaap_CostsAndExpenses" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_6ed4b03d-975e-4c4d-87f2-dc155a7fe5c9_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Compensation cost not yet recognized</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" 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/2025/elts/us-gaap-2025.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_RelatedPartyTransactionLineItems_b3f1e802-8875-4298-93f1-722367e3b76d_terseLabel_en-US" xlink:label="lab_us-gaap_RelatedPartyTransactionLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted_8b22b392-577d-4ba5-b405-87f5475b676b_verboseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Granted (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Non-Option Equity Instruments, Granted</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_7f671288-2d77-4a94-a7f2-f863a841cda8_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2027</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, Year Two</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationInterestAndOtherIncomeExpense_f3504504-cda3-4da7-9e33-6695d64727a3_terseLabel_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationInterestAndOtherIncomeExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Interest and other income (loss), net of bank charges</link:label>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationInterestAndOtherIncomeExpense_label_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationInterestAndOtherIncomeExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Interest And Other Income (Expense)</link:label>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationInterestAndOtherIncomeExpense_documentation_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationInterestAndOtherIncomeExpense" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Interest And Other Income (Expense)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationInterestAndOtherIncomeExpense" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationInterestAndOtherIncomeExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_DisposalGroupIncludingDiscontinuedOperationInterestAndOtherIncomeExpense" xlink:to="lab_wprt_DisposalGroupIncludingDiscontinuedOperationInterestAndOtherIncomeExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock_e40fd768-8387-47e7-9edc-0253f39efbba_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accounts Payable and Accrued Liabilities</link:label>
    <link:label id="lab_us-gaap_ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Accounts Payable and Accrued Liabilities [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_MachineryAndEquipmentMember_44dbebee-1b2d-4ae8-a624-77c65f498480_terseLabel_en-US" xlink:label="lab_us-gaap_MachineryAndEquipmentMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Machinery and equipment</link:label>
    <link:label id="lab_us-gaap_MachineryAndEquipmentMember_label_en-US" xlink:label="lab_us-gaap_MachineryAndEquipmentMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Machinery and Equipment [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MachineryAndEquipmentMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_MachineryAndEquipmentMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MachineryAndEquipmentMember" xlink:to="lab_us-gaap_MachineryAndEquipmentMember" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_EDCLoanMember_00972e69-6d5c-409c-9010-63c9d1292b04_terseLabel_en-US" xlink:label="lab_wprt_EDCLoanMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">EDC</link:label>
    <link:label id="lab_wprt_EDCLoanMember_label_en-US" xlink:label="lab_wprt_EDCLoanMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EDC Loan [Member]</link:label>
    <link:label id="lab_wprt_EDCLoanMember_documentation_en-US" xlink:label="lab_wprt_EDCLoanMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">EDC Loan [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_EDCLoanMember" xlink:href="wprt-20250630.xsd#wprt_EDCLoanMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_EDCLoanMember" xlink:to="lab_wprt_EDCLoanMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_ab34dc0d-6c41-428b-a793-49b70e39bb05_terseLabel_en-US" xlink:label="lab_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Related and Nonrelated Parties [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" xml:lang="en-US">Related and Nonrelated Parties [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.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_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_76df60bc-72a7-452d-88e6-dbe39ae28dd9_totalLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net cash provided by (used in) operating activities of continuing operations</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash Provided by (Used in) Operating Activity, Continuing Operation</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations" xlink:to="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RepaymentsOfLongTermLinesOfCredit_af28d007-edb0-493e-a2ce-d9f0099b7883_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_RepaymentsOfLongTermLinesOfCredit" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Repayments of operating lines of credit and long-term facilities</link:label>
    <link:label id="lab_us-gaap_RepaymentsOfLongTermLinesOfCredit_label_en-US" xlink:label="lab_us-gaap_RepaymentsOfLongTermLinesOfCredit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Repayments of Long-Term Lines of Credit</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RepaymentsOfLongTermLinesOfCredit" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RepaymentsOfLongTermLinesOfCredit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RepaymentsOfLongTermLinesOfCredit" xlink:to="lab_us-gaap_RepaymentsOfLongTermLinesOfCredit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_9366744a-83fb-426d-a5f2-dc5dc4d7b1ef_terseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Issuance of common shares on exercise of share units</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_label_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Shares Issued, Value, Share-Based Payment Arrangement, after Forfeiture</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:to="lab_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_399a9508-c844-428c-bd24-5585cec78f3c_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Outstanding</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Intrinsic Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations_77230690-b5af-4326-b3b7-cc8d1444b463_totalLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net cash provided by (used in) investing activities of continuing operations</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash Provided by (Used in) Investing Activity, Continuing Operation</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations" xlink:to="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InterestExpenseDebt_0a7bbda9-fc37-4685-859b-644469e79605_negatedLabel_en-US" xlink:label="lab_us-gaap_InterestExpenseDebt" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Interest on long-term debt</link:label>
    <link:label id="lab_us-gaap_InterestExpenseDebt_20d7cafa-d20d-449a-8141-5a84e1d7359c_terseLabel_en-US" xlink:label="lab_us-gaap_InterestExpenseDebt" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Interest on long-term debt and accretion of royalty payable</link:label>
    <link:label id="lab_us-gaap_InterestExpenseDebt_label_en-US" xlink:label="lab_us-gaap_InterestExpenseDebt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Interest Expense, Debt</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestExpenseDebt" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InterestExpenseDebt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InterestExpenseDebt" xlink:to="lab_us-gaap_InterestExpenseDebt" xlink:type="arc" order="1"/>
    <link:label id="lab_currency_AllCurrenciesDomain_2421f7a5-f5b3-49d8-8dbf-7ca860063d88_terseLabel_en-US" xlink:label="lab_currency_AllCurrenciesDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">All Currencies [Domain]</link:label>
    <link:label id="lab_currency_AllCurrenciesDomain_label_en-US" xlink:label="lab_currency_AllCurrenciesDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">All Currencies [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_currency_AllCurrenciesDomain" xlink:href="https://xbrl.sec.gov/currency/2025/currency-2025.xsd#currency_AllCurrenciesDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_currency_AllCurrenciesDomain" xlink:to="lab_currency_AllCurrenciesDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_39404df5-4461-4de9-9c55-b99fd49bc2ca_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.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_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_a5cd1c60-bdbf-46e6-8966-4447e857a547_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2026</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, Year One</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfShortTermDebtTable_a8a98b36-c022-4013-adb9-87de7499d021_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfShortTermDebtTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Short-Term Debt [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfShortTermDebtTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfShortTermDebtTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Short-Term Debt [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShortTermDebtTable" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfShortTermDebtTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfShortTermDebtTable" xlink:to="lab_us-gaap_ScheduleOfShortTermDebtTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LeaseholdImprovementsMember_665f6aaa-8bff-4114-bdc0-5e3a1dafe031_terseLabel_en-US" xlink:label="lab_us-gaap_LeaseholdImprovementsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.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_DeconsolidationGainOrLossAmount_f59437d7-cd21-4c7c-8c04-1abae4ac51a0_verboseLabel_en-US" xlink:label="lab_us-gaap_DeconsolidationGainOrLossAmount" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Gain on deconsolidation</link:label>
    <link:label id="lab_us-gaap_DeconsolidationGainOrLossAmount_2cd6e3ad-f571-460d-ba20-2f6f312129ac_negatedLabel_en-US" xlink:label="lab_us-gaap_DeconsolidationGainOrLossAmount" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Gain on deconsolidation</link:label>
    <link:label id="lab_us-gaap_DeconsolidationGainOrLossAmount_46a4d89e-11f0-400f-a827-5e1432d46621_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_DeconsolidationGainOrLossAmount" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Gain on deconsolidation (note 5)</link:label>
    <link:label id="lab_us-gaap_DeconsolidationGainOrLossAmount_label_en-US" xlink:label="lab_us-gaap_DeconsolidationGainOrLossAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deconsolidation, Gain (Loss), Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeconsolidationGainOrLossAmount" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DeconsolidationGainOrLossAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeconsolidationGainOrLossAmount" xlink:to="lab_us-gaap_DeconsolidationGainOrLossAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DiscontinuedOperationsDisposedOfBySaleMember_faf45008-cef3-4db9-bde1-743bf1efe6ba_terseLabel_en-US" xlink:label="lab_us-gaap_DiscontinuedOperationsDisposedOfBySaleMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Discontinued Operations, Disposed of by Sale</link:label>
    <link:label id="lab_us-gaap_DiscontinuedOperationsDisposedOfBySaleMember_label_en-US" xlink:label="lab_us-gaap_DiscontinuedOperationsDisposedOfBySaleMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Discontinued Operations, Disposed of by Sale [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationsDisposedOfBySaleMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DiscontinuedOperationsDisposedOfBySaleMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DiscontinuedOperationsDisposedOfBySaleMember" xlink:to="lab_us-gaap_DiscontinuedOperationsDisposedOfBySaleMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentFaceAmount_1c9398c6-6594-44cc-8aa4-a0a96a8bfa88_verboseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentFaceAmount" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Face amount of loan</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentFaceAmount_91007b3c-6b96-449d-9fbf-2a50b9f39fce_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentFaceAmount" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Long-term debt</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" 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/2025/elts/us-gaap-2025.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_DebtInstrumentNameDomain_2086b01c-b876-495d-a9b6-810ba8670fab_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentNameDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.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_us-gaap_OperatingCostsAndExpenses_fc286d6e-f85e-4b24-adfd-baeaa7dc7b9c_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingCostsAndExpenses" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Corporate and unallocated operating expenses</link:label>
    <link:label id="lab_us-gaap_OperatingCostsAndExpenses_label_en-US" xlink:label="lab_us-gaap_OperatingCostsAndExpenses" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Costs and Expenses</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingCostsAndExpenses" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OperatingCostsAndExpenses"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingCostsAndExpenses" xlink:to="lab_us-gaap_OperatingCostsAndExpenses" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfInvestmentsLineItems_759884d0-df30-4b98-bf49-92a7722fe6cf_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfInvestmentsLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Investments [Line Items]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfInvestmentsLineItems_label_en-US" xlink:label="lab_us-gaap_ScheduleOfInvestmentsLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Investments [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfInvestmentsLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfInvestmentsLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfInvestmentsLineItems" xlink:to="lab_us-gaap_ScheduleOfInvestmentsLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation_017d5fb9-402f-4ddb-aeeb-76f6ca098fff_terseLabel_en-US" xlink:label="lab_us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Income tax expense</link:label>
    <link:label id="lab_us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation_label_en-US" xlink:label="lab_us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Discontinued Operation, Tax Effect of Discontinued Operation</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation" xlink:to="lab_us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_SegmentEarningsBeforeInterestTaxDepreciationAndAmortization_7fbac5e1-92a9-4ba1-81aa-791083a0c1c7_terseLabel_en-US" xlink:label="lab_wprt_SegmentEarningsBeforeInterestTaxDepreciationAndAmortization" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Segment EBITDA</link:label>
    <link:label id="lab_wprt_SegmentEarningsBeforeInterestTaxDepreciationAndAmortization_label_en-US" xlink:label="lab_wprt_SegmentEarningsBeforeInterestTaxDepreciationAndAmortization" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Segment Earnings Before Interest Tax Depreciation And Amortization</link:label>
    <link:label id="lab_wprt_SegmentEarningsBeforeInterestTaxDepreciationAndAmortization_documentation_en-US" xlink:label="lab_wprt_SegmentEarningsBeforeInterestTaxDepreciationAndAmortization" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Segment Earnings Before Interest Tax Depreciation And Amortization</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_SegmentEarningsBeforeInterestTaxDepreciationAndAmortization" xlink:href="wprt-20250630.xsd#wprt_SegmentEarningsBeforeInterestTaxDepreciationAndAmortization"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_SegmentEarningsBeforeInterestTaxDepreciationAndAmortization" xlink:to="lab_wprt_SegmentEarningsBeforeInterestTaxDepreciationAndAmortization" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInOperatingCapital_2a463d03-84c0-402e-b5ea-1f241744030c_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOperatingCapital" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Changes in operating assets and liabilities</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInOperatingCapital_7b360d29-c2f8-41be-a885-e4d3cae09bbf_negatedTotalLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOperatingCapital" xlink:role="http://www.xbrl.org/2009/role/negatedTotalLabel" xlink:type="resource" xml:lang="en-US">Total changes in operating assets and liabilities</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInOperatingCapital_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOperatingCapital" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Adjustment to Reconcile Net Income to Cash Provided by (Used in) Operating Activity, Increase (Decrease) in Operating Capital</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOperatingCapital" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInOperatingCapital"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapital" xlink:to="lab_us-gaap_IncreaseDecreaseInOperatingCapital" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationDeferredTaxLiabilities_f4e58f1e-388a-4015-98e9-c0f3236ab1e9_terseLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationDeferredTaxLiabilities" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Deferred income tax liabilities</link:label>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationDeferredTaxLiabilities_label_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationDeferredTaxLiabilities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Deferred Tax Liabilities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationDeferredTaxLiabilities" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationDeferredTaxLiabilities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationDeferredTaxLiabilities" xlink:to="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationDeferredTaxLiabilities" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationAdditionsToLongLivedAssets_a25129c7-e505-4831-93b2-ccd12e97cc33_terseLabel_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationAdditionsToLongLivedAssets" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Additions to long-lived assets</link:label>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationAdditionsToLongLivedAssets_label_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationAdditionsToLongLivedAssets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Additions To Long-Lived Assets</link:label>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationAdditionsToLongLivedAssets_documentation_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationAdditionsToLongLivedAssets" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Additions To Long-Lived Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationAdditionsToLongLivedAssets" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationAdditionsToLongLivedAssets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_DisposalGroupIncludingDiscontinuedOperationAdditionsToLongLivedAssets" xlink:to="lab_wprt_DisposalGroupIncludingDiscontinuedOperationAdditionsToLongLivedAssets" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingAndExercisableNumber_6135bf5e-f08a-4ccb-bb81-cc0b1ab94ce8_verboseLabel_en-US" xlink:label="lab_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingAndExercisableNumber" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Units outstanding and exercisable, end of period (in shares)</link:label>
    <link:label id="lab_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingAndExercisableNumber_label_en-US" xlink:label="lab_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingAndExercisableNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share Based Compensation Arrangement by Share Based Payment Award Equity Instruments Other than Options Outstanding and Exercisable Number</link:label>
    <link:label id="lab_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingAndExercisableNumber_documentation_en-US" xlink:label="lab_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingAndExercisableNumber" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Number of equity instruments other than options outstanding and exercisable, including both vested and non-vested instruments.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingAndExercisableNumber" xlink:href="wprt-20250630.xsd#wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingAndExercisableNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingAndExercisableNumber" xlink:to="lab_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingAndExercisableNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesTreasuryStockReissued_d1f55597-21b5-4d38-a532-069e33c67b6d_terseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesTreasuryStockReissued" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Treasury stock reissued (in shares)</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesTreasuryStockReissued_label_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesTreasuryStockReissued" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Stock Issued During Period, Shares, Treasury Stock Reissued</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesTreasuryStockReissued" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StockIssuedDuringPeriodSharesTreasuryStockReissued"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodSharesTreasuryStockReissued" xlink:to="lab_us-gaap_StockIssuedDuringPeriodSharesTreasuryStockReissued" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_428baca4-471c-4c13-bee4-5f809119b600_terseLabel_en-US" xlink:label="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.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_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_df05ce9c-5135-440e-af60-6bdefca75536_terseLabel_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:to="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongTermDebtAndCapitalLeaseObligations_761c7c00-2e44-47cd-bd63-171a8792ea69_terseLabel_en-US" xlink:label="lab_us-gaap_LongTermDebtAndCapitalLeaseObligations" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Long-term debt (note 12)</link:label>
    <link:label id="lab_us-gaap_LongTermDebtAndCapitalLeaseObligations_69eef08a-532a-4062-9e33-df3609fb76c5_netLabel_en-US" xlink:label="lab_us-gaap_LongTermDebtAndCapitalLeaseObligations" xlink:role="http://www.xbrl.org/2009/role/netLabel" xlink:type="resource" xml:lang="en-US">Long-term portion of provisions</link:label>
    <link:label id="lab_us-gaap_LongTermDebtAndCapitalLeaseObligations_4e2acac3-16c2-4783-8db6-3ef09371b00a_verboseLabel_en-US" xlink:label="lab_us-gaap_LongTermDebtAndCapitalLeaseObligations" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Long-term portion</link:label>
    <link:label id="lab_us-gaap_LongTermDebtAndCapitalLeaseObligations_label_en-US" xlink:label="lab_us-gaap_LongTermDebtAndCapitalLeaseObligations" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Long-Term Debt and Lease Obligation</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtAndCapitalLeaseObligations" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligations"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermDebtAndCapitalLeaseObligations" xlink:to="lab_us-gaap_LongTermDebtAndCapitalLeaseObligations" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SellingAndMarketingExpense_fdb66e0c-f1b4-41fc-beca-5558e334be10_terseLabel_en-US" xlink:label="lab_us-gaap_SellingAndMarketingExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Sales and marketing</link:label>
    <link:label id="lab_us-gaap_SellingAndMarketingExpense_label_en-US" xlink:label="lab_us-gaap_SellingAndMarketingExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Selling and Marketing Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingAndMarketingExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SellingAndMarketingExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SellingAndMarketingExpense" xlink:to="lab_us-gaap_SellingAndMarketingExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_0aadf6af-ebcb-4b23-ab88-627b6e9e1222_terseLabel_en-US" xlink:label="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2026</link:label>
    <link:label id="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_label_en-US" xlink:label="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Long-Term Debt, Maturity, Year One</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:to="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_ComputerEquipmentAndSoftwareMember_c319eb53-abff-439d-a2f1-9204e5df5f55_terseLabel_en-US" xlink:label="lab_wprt_ComputerEquipmentAndSoftwareMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Computer equipment and software</link:label>
    <link:label id="lab_wprt_ComputerEquipmentAndSoftwareMember_label_en-US" xlink:label="lab_wprt_ComputerEquipmentAndSoftwareMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Computer Equipment and Software [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ComputerEquipmentAndSoftwareMember" xlink:href="wprt-20250630.xsd#wprt_ComputerEquipmentAndSoftwareMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_ComputerEquipmentAndSoftwareMember" xlink:to="lab_wprt_ComputerEquipmentAndSoftwareMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredIncomeTaxLiabilities_4ba737d5-b2bc-4b3a-af6a-9ae57e04e6d8_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxLiabilities" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Deferred income tax liabilities</link:label>
    <link:label id="lab_us-gaap_DeferredIncomeTaxLiabilities_label_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxLiabilities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Tax Liabilities, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilities" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DeferredIncomeTaxLiabilities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredIncomeTaxLiabilities" xlink:to="lab_us-gaap_DeferredIncomeTaxLiabilities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SegmentDomain_166db7c8-8dc5-488d-832f-0fe34d69217f_terseLabel_en-US" xlink:label="lab_us-gaap_SegmentDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Segments [Domain]</link:label>
    <link:label id="lab_us-gaap_SegmentDomain_label_en-US" xlink:label="lab_us-gaap_SegmentDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Segments [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SegmentDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SegmentDomain" xlink:to="lab_us-gaap_SegmentDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeStatementLocationAxis_af765830-ef73-4828-9800-ac1a9553d9af_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeStatementLocationAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Statement of Income Location, Balance [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" xml:lang="en-US">Statement of Income Location, Balance [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.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_IncreaseDecreaseInInventories_000ebeba-f220-492c-bea8-364fde9c64ee_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInInventories" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.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_InventoryNet_33489df8-32cd-49f1-8952-202785660be9_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Inventories (note 7)</link:label>
    <link:label id="lab_us-gaap_InventoryNet_8b338d7d-94ca-411b-9a3d-54e462770119_totalLabel_en-US" xlink:label="lab_us-gaap_InventoryNet" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Inventories</link:label>
    <link:label id="lab_us-gaap_InventoryNet_c4ce2932-bc35-4df1-82da-5128a28642d3_verboseLabel_en-US" xlink:label="lab_us-gaap_InventoryNet" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Inventories</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" 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/2025/elts/us-gaap-2025.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_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_ef432b8b-65a3-4d1b-bb56-13cb7d57e52c_terseLabel_en-US" xlink:label="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accumulated Depreciation</link:label>
    <link:label id="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_label_en-US" xlink:label="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:to="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CostOfRevenueAbstract_84effbec-bca1-4bba-af34-b12c1d0bf5cc_terseLabel_en-US" xlink:label="lab_us-gaap_CostOfRevenueAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating expenses:</link:label>
    <link:label id="lab_us-gaap_CostOfRevenueAbstract_label_en-US" xlink:label="lab_us-gaap_CostOfRevenueAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cost of Revenue [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfRevenueAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CostOfRevenueAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CostOfRevenueAbstract" xlink:to="lab_us-gaap_CostOfRevenueAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountsNotesAndLoansReceivableLineItems_72149023-c52d-4161-ad58-dd2b6e78e314_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsNotesAndLoansReceivableLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accounts, Notes, Loans and Financing Receivable [Line Items]</link:label>
    <link:label id="lab_us-gaap_AccountsNotesAndLoansReceivableLineItems_label_en-US" xlink:label="lab_us-gaap_AccountsNotesAndLoansReceivableLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts, Notes, Loans and Financing Receivable [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountsNotesAndLoansReceivableLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems" xlink:to="lab_us-gaap_AccountsNotesAndLoansReceivableLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationEarnoutsMaximum_d509b66d-bdd2-475e-921a-20618844c2b6_terseLabel_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationEarnoutsMaximum" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Maximum potential earnouts</link:label>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationEarnoutsMaximum_label_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationEarnoutsMaximum" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Earnouts, Maximum</link:label>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationEarnoutsMaximum_documentation_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationEarnoutsMaximum" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Earnouts, Maximum</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationEarnoutsMaximum" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationEarnoutsMaximum"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_DisposalGroupIncludingDiscontinuedOperationEarnoutsMaximum" xlink:to="lab_wprt_DisposalGroupIncludingDiscontinuedOperationEarnoutsMaximum" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_ContractualObligationsRepaymentsTotal_bcd4a236-ae1d-406c-a2dc-230678a701e1_verboseLabel_en-US" xlink:label="lab_wprt_ContractualObligationsRepaymentsTotal" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Contractual cash&#160;flows</link:label>
    <link:label id="lab_wprt_ContractualObligationsRepaymentsTotal_label_en-US" xlink:label="lab_wprt_ContractualObligationsRepaymentsTotal" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Contractual Obligations, Repayments, Total</link:label>
    <link:label id="lab_wprt_ContractualObligationsRepaymentsTotal_documentation_en-US" xlink:label="lab_wprt_ContractualObligationsRepaymentsTotal" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents the amount of contractual cashflows obligation repayments.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ContractualObligationsRepaymentsTotal" xlink:href="wprt-20250630.xsd#wprt_ContractualObligationsRepaymentsTotal"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_ContractualObligationsRepaymentsTotal" xlink:to="lab_wprt_ContractualObligationsRepaymentsTotal" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockValue_c4f16d24-cccc-4c70-9ce0-d6bce6b822ce_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Unlimited common and preferred shares, no par value 17,351,005 (2024 - 17,282,934) common shares issued and outstanding</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" 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/2025/elts/us-gaap-2025.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_CommitmentsAndContingenciesDisclosureTextBlock_995dba00-f488-48bd-81a3-23294299cd45_terseLabel_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.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_DisposalGroupIncludingDiscontinuedOperationRevenue_6db2db2b-eb33-4ee4-9d4c-def00edf5f79_terseLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revenue</link:label>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue_label_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Revenue</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue" xlink:to="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_410247d3-08e1-4c1f-a42d-3858c4b672ec_terseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Diluted (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" 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/2025/elts/us-gaap-2025.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_wprt_CespiraMember_9e8d814a-620f-4581-b915-76ab2c08c092_terseLabel_en-US" xlink:label="lab_wprt_CespiraMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cespira</link:label>
    <link:label id="lab_wprt_CespiraMember_label_en-US" xlink:label="lab_wprt_CespiraMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cespira [Member]</link:label>
    <link:label id="lab_wprt_CespiraMember_documentation_en-US" xlink:label="lab_wprt_CespiraMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Cespira</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_CespiraMember" xlink:href="wprt-20250630.xsd#wprt_CespiraMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_CespiraMember" xlink:to="lab_wprt_CespiraMember" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_ShareUnitsMember_3576814a-911c-4888-a902-5a08a50bdf8a_terseLabel_en-US" xlink:label="lab_wprt_ShareUnitsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share units</link:label>
    <link:label id="lab_wprt_ShareUnitsMember_label_en-US" xlink:label="lab_wprt_ShareUnitsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share units [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ShareUnitsMember" xlink:href="wprt-20250630.xsd#wprt_ShareUnitsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_ShareUnitsMember" xlink:to="lab_wprt_ShareUnitsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommitmentsAndContingencies_cb1dcc1c-8b6c-46df-9de6-1179181789c7_terseLabel_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingencies" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Commitments and contingencies (note 15)</link:label>
    <link:label id="lab_us-gaap_CommitmentsAndContingencies_label_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingencies" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Commitments and Contingencies</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingencies" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommitmentsAndContingencies"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommitmentsAndContingencies" xlink:to="lab_us-gaap_CommitmentsAndContingencies" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ReconciliationOfAssetsFromSegmentToConsolidatedTable_d0d9ba18-7c7e-4da1-aed4-01361215b9a3_terseLabel_en-US" xlink:label="lab_us-gaap_ReconciliationOfAssetsFromSegmentToConsolidatedTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Reconciliation of Assets from Segment to Consolidated [Table]</link:label>
    <link:label id="lab_us-gaap_ReconciliationOfAssetsFromSegmentToConsolidatedTable_label_en-US" xlink:label="lab_us-gaap_ReconciliationOfAssetsFromSegmentToConsolidatedTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Reconciliation of Assets from Segment to Consolidated [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReconciliationOfAssetsFromSegmentToConsolidatedTable" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ReconciliationOfAssetsFromSegmentToConsolidatedTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ReconciliationOfAssetsFromSegmentToConsolidatedTable" xlink:to="lab_us-gaap_ReconciliationOfAssetsFromSegmentToConsolidatedTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ContractualObligationDueInFourthAndFifthYear_92ced7a5-af66-4ad1-8680-e6d61938ef86_terseLabel_en-US" xlink:label="lab_us-gaap_ContractualObligationDueInFourthAndFifthYear" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Contractual obligation, due 4-5 years</link:label>
    <link:label id="lab_us-gaap_ContractualObligationDueInFourthAndFifthYear_label_en-US" xlink:label="lab_us-gaap_ContractualObligationDueInFourthAndFifthYear" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Contractual Obligation, to be Paid, Year Four and Five</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractualObligationDueInFourthAndFifthYear" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ContractualObligationDueInFourthAndFifthYear"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ContractualObligationDueInFourthAndFifthYear" xlink:to="lab_us-gaap_ContractualObligationDueInFourthAndFifthYear" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LoansPayableMember_c34e137c-dc4e-496d-bda3-4e01f6112046_terseLabel_en-US" xlink:label="lab_us-gaap_LoansPayableMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Loans Payable</link:label>
    <link:label id="lab_us-gaap_LoansPayableMember_label_en-US" xlink:label="lab_us-gaap_LoansPayableMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Loans Payable [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LoansPayableMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LoansPayableMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LoansPayableMember" xlink:to="lab_us-gaap_LoansPayableMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SellingAndMarketingExpenseMember_6772341a-b90e-4c76-b4cf-1dbfe1489e0f_verboseLabel_en-US" xlink:label="lab_us-gaap_SellingAndMarketingExpenseMember" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Sales and marketing</link:label>
    <link:label id="lab_us-gaap_SellingAndMarketingExpenseMember_label_en-US" xlink:label="lab_us-gaap_SellingAndMarketingExpenseMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Selling and Marketing Expense [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingAndMarketingExpenseMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SellingAndMarketingExpenseMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SellingAndMarketingExpenseMember" xlink:to="lab_us-gaap_SellingAndMarketingExpenseMember" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_HoldbackReceivablesNetCurrent_0ae94066-9ddc-4908-8342-2c57507ed861_terseLabel_en-US" xlink:label="lab_wprt_HoldbackReceivablesNetCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Holdback receivable</link:label>
    <link:label id="lab_wprt_HoldbackReceivablesNetCurrent_label_en-US" xlink:label="lab_wprt_HoldbackReceivablesNetCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Holdback Receivables, Net, Current</link:label>
    <link:label id="lab_wprt_HoldbackReceivablesNetCurrent_documentation_en-US" xlink:label="lab_wprt_HoldbackReceivablesNetCurrent" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Holdback Receivables, Net, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_HoldbackReceivablesNetCurrent" xlink:href="wprt-20250630.xsd#wprt_HoldbackReceivablesNetCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_HoldbackReceivablesNetCurrent" xlink:to="lab_wprt_HoldbackReceivablesNetCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongTermDebtTextBlock_9efc562c-f619-465c-b00b-4b24f498ee1f_terseLabel_en-US" xlink:label="lab_us-gaap_LongTermDebtTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Long-term debt</link:label>
    <link:label id="lab_us-gaap_LongTermDebtTextBlock_label_en-US" xlink:label="lab_us-gaap_LongTermDebtTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Long-Term Debt [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LongTermDebtTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermDebtTextBlock" xlink:to="lab_us-gaap_LongTermDebtTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EquityMethodInvestmentOwnershipPercentage_a281975b-037e-4215-b34f-75232f67bbfe_terseLabel_en-US" xlink:label="lab_us-gaap_EquityMethodInvestmentOwnershipPercentage" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Equity method investment, ownership percentage</link:label>
    <link:label id="lab_us-gaap_EquityMethodInvestmentOwnershipPercentage_label_en-US" xlink:label="lab_us-gaap_EquityMethodInvestmentOwnershipPercentage" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity Method Investment, Ownership Percentage</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityMethodInvestmentOwnershipPercentage" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EquityMethodInvestmentOwnershipPercentage"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EquityMethodInvestmentOwnershipPercentage" xlink:to="lab_us-gaap_EquityMethodInvestmentOwnershipPercentage" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_a292dc37-d031-4858-9c01-6cf84e9f18f0_terseLabel_en-US" xlink:label="lab_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">New accounting pronouncements</link:label>
    <link:label id="lab_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_label_en-US" xlink:label="lab_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounting Standards Update and Change in Accounting Principle [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:to="lab_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingAndExercisableWeightedAverageGrantDateFairValue_b54fbec0-8d16-47e8-bcf8-31b9722c5195_verboseLabel_en-US" xlink:label="lab_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingAndExercisableWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Units outstanding and exercisable, end of period (in Canadian dollars per share)</link:label>
    <link:label id="lab_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingAndExercisableWeightedAverageGrantDateFairValue_label_en-US" xlink:label="lab_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingAndExercisableWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share Based Compensation Arrangement by Share Based Payment Award Non Option Equity Instruments Outstanding and Exercisable Weighted Average Grant Date Fair Value</link:label>
    <link:label id="lab_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingAndExercisableWeightedAverageGrantDateFairValue_documentation_en-US" xlink:label="lab_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingAndExercisableWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Weighted average grant-date fair value of non-option equity instruments outstanding and exercisable.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingAndExercisableWeightedAverageGrantDateFairValue" xlink:href="wprt-20250630.xsd#wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingAndExercisableWeightedAverageGrantDateFairValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingAndExercisableWeightedAverageGrantDateFairValue" xlink:to="lab_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingAndExercisableWeightedAverageGrantDateFairValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShortTermDebtLineItems_81ef5352-35d2-4de2-9349-6b8c21a2eb3c_terseLabel_en-US" xlink:label="lab_us-gaap_ShortTermDebtLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Short-Term Debt [Line Items]</link:label>
    <link:label id="lab_us-gaap_ShortTermDebtLineItems_label_en-US" xlink:label="lab_us-gaap_ShortTermDebtLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Short-Term Debt [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermDebtLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShortTermDebtLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShortTermDebtLineItems" xlink:to="lab_us-gaap_ShortTermDebtLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EquityComponentDomain_33ceb10e-b052-4b26-a0e5-58370c92cfe2_terseLabel_en-US" xlink:label="lab_us-gaap_EquityComponentDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.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_dei_DocumentPeriodEndDate_960946f0-95c4-4286-b605-559964babc99_terseLabel_en-US" xlink:label="lab_dei_DocumentPeriodEndDate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/dei-2025.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_ProceedsFromLinesOfCredit_c3c1772a-c36a-41fd-8e44-37c419097655_terseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromLinesOfCredit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Drawings on operating lines of credit and long-term facilities</link:label>
    <link:label id="lab_us-gaap_ProceedsFromLinesOfCredit_label_en-US" xlink:label="lab_us-gaap_ProceedsFromLinesOfCredit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Proceeds from Lines of Credit</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromLinesOfCredit" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ProceedsFromLinesOfCredit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromLinesOfCredit" xlink:to="lab_us-gaap_ProceedsFromLinesOfCredit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ContractualObligation_ab59dd29-f43e-45e3-8ed0-de426a02fdb3_terseLabel_en-US" xlink:label="lab_us-gaap_ContractualObligation" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Carrying amount</link:label>
    <link:label id="lab_us-gaap_ContractualObligation_label_en-US" xlink:label="lab_us-gaap_ContractualObligation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Contractual Obligation</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractualObligation" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ContractualObligation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ContractualObligation" xlink:to="lab_us-gaap_ContractualObligation" xlink:type="arc" order="1"/>
    <link:label id="lab_currency_PLN_87cae56b-dd33-4cf3-af03-b76e255288fc_terseLabel_en-US" xlink:label="lab_currency_PLN" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Polish Zloty</link:label>
    <link:label id="lab_currency_PLN_label_en-US" xlink:label="lab_currency_PLN" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Poland, Zlotych</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_currency_PLN" xlink:href="https://xbrl.sec.gov/currency/2025/currency-2025.xsd#currency_PLN"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_currency_PLN" xlink:to="lab_currency_PLN" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfInvestmentsTable_76c4ef7a-8ec8-4c70-afd0-777e49e2c4fe_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfInvestmentsTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Investments [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfInvestmentsTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfInvestmentsTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Investments [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfInvestmentsTable" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfInvestmentsTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfInvestmentsTable" xlink:to="lab_us-gaap_ScheduleOfInvestmentsTable" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_StatementScenarioAxis_54d913f4-f161-403b-9791-53bfbeed6400_terseLabel_en-US" xlink:label="lab_srt_StatementScenarioAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/srt-2025.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_dei_DocumentType_1afe4ab6-1a8b-4acc-82b5-135f20121b63_terseLabel_en-US" xlink:label="lab_dei_DocumentType" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/dei-2025.xsd#dei_DocumentType"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentType" xlink:to="lab_dei_DocumentType" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_1925f652-5dea-43db-988a-b12ce910e93e_periodStartLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Outstanding, beginning of period (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_7c91caf6-d6d8-446a-8c64-193d36df1d3e_periodEndLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Outstanding, 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" 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/2025/elts/us-gaap-2025.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_us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets_9c0088e3-bd1b-4099-9722-f6a004eb3eec_terseLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other long-term assets</link:label>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets_label_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Other Assets, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets" xlink:to="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets" xlink:type="arc" order="1"/>
    <link:label id="lab_currency_ARS_f8bf9117-1e60-4d17-9d22-e801ce0cd173_terseLabel_en-US" xlink:label="lab_currency_ARS" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Argentina Peso</link:label>
    <link:label id="lab_currency_ARS_label_en-US" xlink:label="lab_currency_ARS" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Argentina, Pesos</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_currency_ARS" xlink:href="https://xbrl.sec.gov/currency/2025/currency-2025.xsd#currency_ARS"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_currency_ARS" xlink:to="lab_currency_ARS" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_3e83a532-1a68-4713-bb27-7ba6cc65f56c_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revenue</link:label>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_label_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue from Contract with Customer, Excluding Assessed Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:to="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_2d586848-610d-4d8d-8955-e885f36e006d_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Purchase of property, plant 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" 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/2025/elts/us-gaap-2025.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_DisposalGroupIncludingDiscontinuedOperationGeneralAndAdministrativeExpense_3ebb904d-5f10-4653-b239-dd9551d64407_terseLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationGeneralAndAdministrativeExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">General and administrative</link:label>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationGeneralAndAdministrativeExpense_label_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationGeneralAndAdministrativeExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, General and Administrative Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationGeneralAndAdministrativeExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationGeneralAndAdministrativeExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationGeneralAndAdministrativeExpense" xlink:to="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationGeneralAndAdministrativeExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AssetsCurrent_33c9addf-8e58-4431-b034-d21939cf4281_totalLabel_en-US" xlink:label="lab_us-gaap_AssetsCurrent" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.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_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations_8d0b580f-0481-40c2-a197-b6232b4f8cc3_terseLabel_en-US" xlink:label="lab_us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Net cash provided by (used in) operating activities of discontinued operations</link:label>
    <link:label id="lab_us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations_label_en-US" xlink:label="lab_us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash Provided by (Used in) Operating Activity, Discontinued Operation</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations" xlink:to="lab_us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisposalGroupClassificationAxis_1771b759-2644-44a7-81be-573b61f90be8_terseLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupClassificationAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Disposal Group Classification [Axis]</link:label>
    <link:label id="lab_us-gaap_DisposalGroupClassificationAxis_label_en-US" xlink:label="lab_us-gaap_DisposalGroupClassificationAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group Classification [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupClassificationAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupClassificationAxis" xlink:to="lab_us-gaap_DisposalGroupClassificationAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EquityMethodInvestmentRealizedGainLossOnDisposal_5e65c6ee-7be5-40cd-b157-7086d2769658_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_EquityMethodInvestmentRealizedGainLossOnDisposal" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Loss on sale of investment (note 8)</link:label>
    <link:label id="lab_us-gaap_EquityMethodInvestmentRealizedGainLossOnDisposal_label_en-US" xlink:label="lab_us-gaap_EquityMethodInvestmentRealizedGainLossOnDisposal" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity Method Investment, Realized Gain (Loss) on Disposal</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityMethodInvestmentRealizedGainLossOnDisposal" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EquityMethodInvestmentRealizedGainLossOnDisposal"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EquityMethodInvestmentRealizedGainLossOnDisposal" xlink:to="lab_us-gaap_EquityMethodInvestmentRealizedGainLossOnDisposal" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_DeferredShareUnitsMember_e06bc367-a4c2-4ed4-96f0-51b99cf783ef_terseLabel_en-US" xlink:label="lab_wprt_DeferredShareUnitsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">DSUs</link:label>
    <link:label id="lab_wprt_DeferredShareUnitsMember_label_en-US" xlink:label="lab_wprt_DeferredShareUnitsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Share Units [Member]</link:label>
    <link:label id="lab_wprt_DeferredShareUnitsMember_documentation_en-US" xlink:label="lab_wprt_DeferredShareUnitsMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Deferred Share Units</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DeferredShareUnitsMember" xlink:href="wprt-20250630.xsd#wprt_DeferredShareUnitsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_DeferredShareUnitsMember" xlink:to="lab_wprt_DeferredShareUnitsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherReceivablesNetCurrent_00aa7209-80d8-4272-bfbe-4418394e5e53_terseLabel_en-US" xlink:label="lab_us-gaap_OtherReceivablesNetCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Due from related parties (note 14)</link:label>
    <link:label id="lab_us-gaap_OtherReceivablesNetCurrent_52f9f816-79b5-4cde-8c7f-4eee4a39cf82_verboseLabel_en-US" xlink:label="lab_us-gaap_OtherReceivablesNetCurrent" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Receivables</link:label>
    <link:label id="lab_us-gaap_OtherReceivablesNetCurrent_label_en-US" xlink:label="lab_us-gaap_OtherReceivablesNetCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Receivables, Net, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherReceivablesNetCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherReceivablesNetCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherReceivablesNetCurrent" xlink:to="lab_us-gaap_OtherReceivablesNetCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization_8a05db30-63e5-4dd2-a45d-306282d54885_terseLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Depreciation and amortization</link:label>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization_label_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Depreciation and Amortization</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization" xlink:to="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cd1a4965-aa0c-47e6-a60e-e26073961623_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Disposal Group Name [Axis]</link:label>
    <link:label id="lab_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_label_en-US" xlink:label="lab_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group Name [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis" xlink:to="lab_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_3c21e33d-1315-4a39-9765-0cf8a6d4227f_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Exercised</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercises in Period, Intrinsic Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour_c0fedf3a-4339-4203-9c3e-8e5191a09376_terseLabel_en-US" xlink:label="lab_wprt_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Thereafter</link:label>
    <link:label id="lab_wprt_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour_label_en-US" xlink:label="lab_wprt_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Liability, To Be Paid, After Year Four</link:label>
    <link:label id="lab_wprt_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour_documentation_en-US" xlink:label="lab_wprt_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Liability, To Be Paid, After Year Four</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour" xlink:href="wprt-20250630.xsd#wprt_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour" xlink:to="lab_wprt_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax_6862da20-9560-4862-8996-f3ad468e5c63_totalLabel_en-US" xlink:label="lab_us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Income (loss) from discontinued operations before income tax</link:label>
    <link:label id="lab_us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax_label_en-US" xlink:label="lab_us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Discontinued Operation, Income (Loss) from Discontinued Operation, before Income Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax" xlink:to="lab_us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_85714849-250c-4d05-8906-5af925d866ef_totalLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Other comprehensive income (loss)</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_3a2efe8f-5bcf-4fe4-90cf-80eeb3488b6c_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other comprehensive income (loss)</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesCurrentAbstract_47709086-5bec-48ce-acb0-d1e64fa70def_terseLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesCurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_d560d8d8-1ca0-406a-a398-81f634661289_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Weighted average grant date&#160;fair value (CDN&#160;$)</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" 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/2025/elts/us-gaap-2025.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_srt_StatementGeographicalAxis_55f6a781-51c8-40ee-99dd-6789aa4d1a97_terseLabel_en-US" xlink:label="lab_srt_StatementGeographicalAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/srt-2025.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_OperatingExpenses_c8889bdf-f2e0-4b2c-b667-56e00a354aba_totalLabel_en-US" xlink:label="lab_us-gaap_OperatingExpenses" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">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" 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/2025/elts/us-gaap-2025.xsd#us-gaap_OperatingExpenses"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingExpenses" xlink:to="lab_us-gaap_OperatingExpenses" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_0a09e76a-4744-4106-82e0-707656eeef6f_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.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_ForeignCurrencyTransactionGainLossBeforeTax_1fdaa3f3-d318-4219-b371-ede4b4a7fe3b_negatedLabel_en-US" xlink:label="lab_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Foreign exchange (gain) loss</link:label>
    <link:label id="lab_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_3eb1d959-7ddf-4b4b-a3e3-9c5b3ea6235a_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Unrealized foreign exchange loss</link:label>
    <link:label id="lab_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_4486dcc0-e655-4536-bfdd-03981fad0010_negatedNetLabel_en-US" xlink:label="lab_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xlink:role="http://www.xbrl.org/2009/role/negatedNetLabel" xlink:type="resource" xml:lang="en-US">Foreign exchange gain</link:label>
    <link:label id="lab_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_label_en-US" xlink:label="lab_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Gain (Loss), Foreign Currency Transaction, before Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ForeignCurrencyTransactionGainLossBeforeTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xlink:to="lab_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OciEquityMethodInvestmentAfterTax_90ed4a85-429a-49ff-b1dc-8c9c65503ece_terseLabel_en-US" xlink:label="lab_us-gaap_OciEquityMethodInvestmentAfterTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Ownership share of equity method investments' other comprehensive loss</link:label>
    <link:label id="lab_us-gaap_OciEquityMethodInvestmentAfterTax_label_en-US" xlink:label="lab_us-gaap_OciEquityMethodInvestmentAfterTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">OCI, Equity Method Investment, after Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OciEquityMethodInvestmentAfterTax" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OciEquityMethodInvestmentAfterTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OciEquityMethodInvestmentAfterTax" xlink:to="lab_us-gaap_OciEquityMethodInvestmentAfterTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable_4848b02a-e727-410f-b13c-75ad17dd9385_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Related Party Transaction [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" xml:lang="en-US">Related Party Transaction [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.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_EarningsPerShareDiluted_baec7aa6-4aae-4e27-a59d-cb94b2eeab20_totalLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareDiluted" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net income (loss) per share - diluted (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareDiluted_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareDiluted" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Earnings Per Share, Diluted</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareDiluted" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EarningsPerShareDiluted"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareDiluted" xlink:to="lab_us-gaap_EarningsPerShareDiluted" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_ScenarioForecastMember_eda591c9-4f45-43ad-ba9f-543079aa23bb_terseLabel_en-US" xlink:label="lab_srt_ScenarioForecastMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">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" 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/2025/elts/srt-2025.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_wprt_CespiraSwedenABMember_ddb93bd2-b46f-47b4-a82d-6fb5082ddc7f_terseLabel_en-US" xlink:label="lab_wprt_CespiraSwedenABMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cespira Sweden AB</link:label>
    <link:label id="lab_wprt_CespiraSwedenABMember_label_en-US" xlink:label="lab_wprt_CespiraSwedenABMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cespira Sweden AB [Member]</link:label>
    <link:label id="lab_wprt_CespiraSwedenABMember_documentation_en-US" xlink:label="lab_wprt_CespiraSwedenABMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Cespira Sweden AB</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_CespiraSwedenABMember" xlink:href="wprt-20250630.xsd#wprt_CespiraSwedenABMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_CespiraSwedenABMember" xlink:to="lab_wprt_CespiraSwedenABMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountsReceivableNetCurrent_9b3e1c57-1787-4621-b5d4-6cb6d559420e_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsReceivableNetCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accounts receivable (note 6)</link:label>
    <link:label id="lab_us-gaap_AccountsReceivableNetCurrent_bf5c686d-044d-4b84-a3de-24859f89ab9f_totalLabel_en-US" xlink:label="lab_us-gaap_AccountsReceivableNetCurrent" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Accounts receivable</link:label>
    <link:label id="lab_us-gaap_AccountsReceivableNetCurrent_99271663-cd74-417f-8a87-0eac2ef4751b_verboseLabel_en-US" xlink:label="lab_us-gaap_AccountsReceivableNetCurrent" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Accounts receivable</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" 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/2025/elts/us-gaap-2025.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_ConcentrationRiskBenchmarkDomain_fe1dc41d-a07b-47ce-9f59-24c82a32e16c_terseLabel_en-US" xlink:label="lab_us-gaap_ConcentrationRiskBenchmarkDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.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_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_154df791-5c47-47b5-9c83-95a40053601e_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Disposal Groups, Including Discontinued Operations [Table]</link:label>
    <link:label id="lab_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_label_en-US" xlink:label="lab_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Groups, Including Discontinued Operations [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" xlink:to="lab_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountsPayableCurrentAndNoncurrent_5d44cca2-422d-4684-9bd5-1e5ad59e632b_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsPayableCurrentAndNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Payables</link:label>
    <link:label id="lab_us-gaap_AccountsPayableCurrentAndNoncurrent_label_en-US" xlink:label="lab_us-gaap_AccountsPayableCurrentAndNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts Payable</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableCurrentAndNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountsPayableCurrentAndNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsPayableCurrentAndNoncurrent" xlink:to="lab_us-gaap_AccountsPayableCurrentAndNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CumulativeTranslationAdjustmentNetOfTaxPeriodIncreaseDecrease_7cd7a788-19b4-4418-9a3a-8fb13bf47895_verboseLabel_en-US" xlink:label="lab_us-gaap_CumulativeTranslationAdjustmentNetOfTaxPeriodIncreaseDecrease" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Cumulative translation adjustment</link:label>
    <link:label id="lab_us-gaap_CumulativeTranslationAdjustmentNetOfTaxPeriodIncreaseDecrease_label_en-US" xlink:label="lab_us-gaap_CumulativeTranslationAdjustmentNetOfTaxPeriodIncreaseDecrease" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cumulative Translation Adjustment, Net of Tax, Period Increase (Decrease)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CumulativeTranslationAdjustmentNetOfTaxPeriodIncreaseDecrease" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CumulativeTranslationAdjustmentNetOfTaxPeriodIncreaseDecrease"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CumulativeTranslationAdjustmentNetOfTaxPeriodIncreaseDecrease" xlink:to="lab_us-gaap_CumulativeTranslationAdjustmentNetOfTaxPeriodIncreaseDecrease" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_ScheduleOfForeignCurrencyTable_f33fcf69-33be-4924-82f9-6d9a46ffb755_terseLabel_en-US" xlink:label="lab_wprt_ScheduleOfForeignCurrencyTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Foreign Currency [Table]</link:label>
    <link:label id="lab_wprt_ScheduleOfForeignCurrencyTable_label_en-US" xlink:label="lab_wprt_ScheduleOfForeignCurrencyTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Foreign Currency [Table]</link:label>
    <link:label id="lab_wprt_ScheduleOfForeignCurrencyTable_documentation_en-US" xlink:label="lab_wprt_ScheduleOfForeignCurrencyTable" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Schedule of Foreign Currency [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ScheduleOfForeignCurrencyTable" xlink:href="wprt-20250630.xsd#wprt_ScheduleOfForeignCurrencyTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_ScheduleOfForeignCurrencyTable" xlink:to="lab_wprt_ScheduleOfForeignCurrencyTable" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_ConsolidationItemsDomain_6c341390-ca8d-42d4-8117-2482d5956cb0_terseLabel_en-US" xlink:label="lab_srt_ConsolidationItemsDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Consolidation Items [Domain]</link:label>
    <link:label id="lab_srt_ConsolidationItemsDomain_label_en-US" xlink:label="lab_srt_ConsolidationItemsDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Consolidation Items [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsDomain" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ConsolidationItemsDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ConsolidationItemsDomain" xlink:to="lab_srt_ConsolidationItemsDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract_label_en-US" xlink:label="lab_us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Investments, Debt and Equity Securities [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract" xlink:to="lab_us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingExpensesAbstract_2d5631ff-6718-4e8d-ac91-c2ee821f8222_terseLabel_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingExpensesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating expenses:</link:label>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingExpensesAbstract_label_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingExpensesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Operating Expenses [Abstract]</link:label>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingExpensesAbstract_documentation_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingExpensesAbstract" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Operating Expenses</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingExpensesAbstract" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationOperatingExpensesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingExpensesAbstract" xlink:to="lab_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingExpensesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent_debb9570-7d43-49cb-b687-7c051deef5ee_terseLabel_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Long-term operating lease liabilities</link:label>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent_label_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Operating Lease, Liability, Noncurrent</link:label>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent_documentation_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Operating Lease, Liability, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent" xlink:to="lab_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInPrepaidExpense_5d179809-4931-46bf-ad77-4c41291118d5_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Prepaid expenses</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInPrepaidExpense_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase (Decrease) in Prepaid Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInPrepaidExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:to="lab_us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EquityMethodInvestmentsDisclosureTextBlock_cd5677ca-4361-4ead-9b37-aaddef4d98c0_terseLabel_en-US" xlink:label="lab_us-gaap_EquityMethodInvestmentsDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Long-term investments</link:label>
    <link:label id="lab_us-gaap_EquityMethodInvestmentsDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_EquityMethodInvestmentsDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity Method Investments and Joint Ventures Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityMethodInvestmentsDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EquityMethodInvestmentsDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EquityMethodInvestmentsDisclosureTextBlock" xlink:to="lab_us-gaap_EquityMethodInvestmentsDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GrossProfit_97deced5-0595-4738-8020-e6b76adba172_totalLabel_en-US" xlink:label="lab_us-gaap_GrossProfit" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Gross profit</link:label>
    <link:label id="lab_us-gaap_GrossProfit_label_en-US" xlink:label="lab_us-gaap_GrossProfit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" 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/2025/elts/us-gaap-2025.xsd#us-gaap_GrossProfit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GrossProfit" xlink:to="lab_us-gaap_GrossProfit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ContractualObligationDueInNextTwelveMonths_f0bd60b7-5be1-41aa-8414-ea99dc29ca5f_terseLabel_en-US" xlink:label="lab_us-gaap_ContractualObligationDueInNextTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Contractual obligation, due less than 1 year</link:label>
    <link:label id="lab_us-gaap_ContractualObligationDueInNextTwelveMonths_label_en-US" xlink:label="lab_us-gaap_ContractualObligationDueInNextTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Contractual Obligation, to be Paid, Year One</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractualObligationDueInNextTwelveMonths" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ContractualObligationDueInNextTwelveMonths"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ContractualObligationDueInNextTwelveMonths" xlink:to="lab_us-gaap_ContractualObligationDueInNextTwelveMonths" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PrepaidExpenseCurrentAndNoncurrent_5d95bd17-69b4-46f4-ba57-d6f8bfe52a31_terseLabel_en-US" xlink:label="lab_us-gaap_PrepaidExpenseCurrentAndNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Prepaid expenses</link:label>
    <link:label id="lab_us-gaap_PrepaidExpenseCurrentAndNoncurrent_label_en-US" xlink:label="lab_us-gaap_PrepaidExpenseCurrentAndNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Prepaid Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PrepaidExpenseCurrentAndNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PrepaidExpenseCurrentAndNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PrepaidExpenseCurrentAndNoncurrent" xlink:to="lab_us-gaap_PrepaidExpenseCurrentAndNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShortTermDebtTypeAxis_d7c943fc-45b4-474c-b2d4-903687a41b8c_terseLabel_en-US" xlink:label="lab_us-gaap_ShortTermDebtTypeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Short-term Debt, Type [Axis]</link:label>
    <link:label id="lab_us-gaap_ShortTermDebtTypeAxis_label_en-US" xlink:label="lab_us-gaap_ShortTermDebtTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Short-Term Debt, Type [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermDebtTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShortTermDebtTypeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShortTermDebtTypeAxis" xlink:to="lab_us-gaap_ShortTermDebtTypeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock_08ada46d-bb0a-4daa-944d-abce3ce07cdf_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accounts payable and accrued liabilities</link:label>
    <link:label id="lab_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts Payable and Accrued Liabilities Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xlink:to="lab_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountsPayableAndAccruedLiabilitiesMember_e3c81cbf-3386-4d45-b9fc-a98b27f6414c_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsPayableAndAccruedLiabilitiesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accounts payable and accrued liabilities</link:label>
    <link:label id="lab_us-gaap_AccountsPayableAndAccruedLiabilitiesMember_label_en-US" xlink:label="lab_us-gaap_AccountsPayableAndAccruedLiabilitiesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts Payable and Accrued Liabilities [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesMember" xlink:to="lab_us-gaap_AccountsPayableAndAccruedLiabilitiesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_fbf6be85-4838-4e06-bea9-ccd764cabb27_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.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_IncomeTaxesPaidNet_b1e7464d-f2c3-4a07-834a-1323edd73dcb_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxesPaidNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Taxes paid, net of refunds</link:label>
    <link:label id="lab_us-gaap_IncomeTaxesPaidNet_label_en-US" xlink:label="lab_us-gaap_IncomeTaxesPaidNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Taxes Paid, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxesPaidNet" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeTaxesPaidNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxesPaidNet" xlink:to="lab_us-gaap_IncomeTaxesPaidNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_9dd03367-de42-4460-bde9-625e9deea8d9_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Inventories</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" 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/2025/elts/us-gaap-2025.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_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent_639013ee-876d-4a99-99a8-47359aa5b529_terseLabel_en-US" xlink:label="lab_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Current assets held for sale (note 5)</link:label>
    <link:label id="lab_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent_ffc6befc-a5e9-4f06-a286-f97e74ff4c28_totalLabel_en-US" xlink:label="lab_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Current assets classified as held for sale</link:label>
    <link:label id="lab_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent_label_en-US" xlink:label="lab_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Assets, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent" xlink:to="lab_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentCarryingAmount_073990df-c05e-4671-a202-54deca1edf9a_totalLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentCarryingAmount" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Long-term debt</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" 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/2025/elts/us-gaap-2025.xsd#us-gaap_DebtInstrumentCarryingAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentCarryingAmount" xlink:to="lab_us-gaap_DebtInstrumentCarryingAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EmployeeRelatedLiabilitiesCurrent_562de4e3-db6b-424b-b31c-f5f436478eb9_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accrued payroll</link:label>
    <link:label id="lab_us-gaap_EmployeeRelatedLiabilitiesCurrent_label_en-US" xlink:label="lab_us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Employee-related Liabilities, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:to="lab_us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_8b4a3c1f-2c57-408d-8906-4b3ecc2c3d6c_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Property, plant 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" 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/2025/elts/us-gaap-2025.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_LesseeOperatingLeaseLiabilityPaymentsDue_d581fe3a-ce01-40be-b710-07a89cefa3ad_totalLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total undiscounted cash flows</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" 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/2025/elts/us-gaap-2025.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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised_b28cf0d4-d7ae-4485-95bb-0f2b22f62b0a_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Vested and exercised (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" 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/2025/elts/us-gaap-2025.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_wprt_DisposalGroupIncludingDiscontinuedOperationForeignExchangeGainLoss_1434f697-3c7a-4af0-b119-02dca8e38275_negatedTerseLabel_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationForeignExchangeGainLoss" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Foreign exchange loss</link:label>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationForeignExchangeGainLoss_label_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationForeignExchangeGainLoss" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Foreign Exchange Gain (Loss)</link:label>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationForeignExchangeGainLoss_documentation_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationForeignExchangeGainLoss" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Foreign Exchange Gain (Loss)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationForeignExchangeGainLoss" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationForeignExchangeGainLoss"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_DisposalGroupIncludingDiscontinuedOperationForeignExchangeGainLoss" xlink:to="lab_wprt_DisposalGroupIncludingDiscontinuedOperationForeignExchangeGainLoss" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetIncomeLoss_7b9ab797-23ff-41f1-8626-0a90eee0c29b_totalLabel_en-US" xlink:label="lab_us-gaap_NetIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net income (loss) for the period</link:label>
    <link:label id="lab_us-gaap_NetIncomeLoss_77f0e979-a9a4-449a-92ea-fed8ac82dbc6_terseLabel_en-US" xlink:label="lab_us-gaap_NetIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Net income (loss) for the period</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" 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/2025/elts/us-gaap-2025.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_OtherInventoryPurchasedGoods_393f7eef-5307-46e5-9dea-653a1bb20c77_terseLabel_en-US" xlink:label="lab_us-gaap_OtherInventoryPurchasedGoods" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Purchased parts</link:label>
    <link:label id="lab_us-gaap_OtherInventoryPurchasedGoods_label_en-US" xlink:label="lab_us-gaap_OtherInventoryPurchasedGoods" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Inventory, Purchased Goods, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherInventoryPurchasedGoods" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherInventoryPurchasedGoods"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherInventoryPurchasedGoods" xlink:to="lab_us-gaap_OtherInventoryPurchasedGoods" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeDomain_a4cb5fbd-8622-49a8-b619-78c836d4510f_terseLabel_en-US" xlink:label="lab_us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Equity Method Investment, Nonconsolidated Investee [Domain]</link:label>
    <link:label id="lab_us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeDomain_label_en-US" xlink:label="lab_us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity Method Investment, Nonconsolidated Investee [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeDomain" xlink:to="lab_us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RelatedPartyTransactionAmountsOfTransaction_61113179-9378-4d3d-b554-94d2635ac8d4_terseLabel_en-US" xlink:label="lab_us-gaap_RelatedPartyTransactionAmountsOfTransaction" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Transaction amount</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" 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/2025/elts/us-gaap-2025.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_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract_533fc0fd-feba-4b59-be2b-853032df3d6d_terseLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Shareholders&#8217; equity:</link:label>
    <link:label id="lab_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract_label_en-US" xlink:label="lab_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity, Including Portion Attributable to Noncontrolling Interest [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:to="lab_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_dd2b9d8a-003a-4ed4-85e7-95bafbeaa32f_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Vesting period (in years)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationInterestExpense_056e4b94-58fd-49e9-b0ab-49919038b8d2_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationInterestExpense" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Interest on long-term debt</link:label>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationInterestExpense_label_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationInterestExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Interest Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationInterestExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationInterestExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationInterestExpense" xlink:to="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationInterestExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_HighPressureControlsSystemsMember_1170068f-b3f5-41a8-a15b-5fe82bed695b_terseLabel_en-US" xlink:label="lab_wprt_HighPressureControlsSystemsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">High-Pressure Controls &amp; Systems</link:label>
    <link:label id="lab_wprt_HighPressureControlsSystemsMember_label_en-US" xlink:label="lab_wprt_HighPressureControlsSystemsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">High-Pressure Controls &amp; Systems [Member]</link:label>
    <link:label id="lab_wprt_HighPressureControlsSystemsMember_documentation_en-US" xlink:label="lab_wprt_HighPressureControlsSystemsMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">High-Pressure Controls &amp; Systems</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_HighPressureControlsSystemsMember" xlink:href="wprt-20250630.xsd#wprt_HighPressureControlsSystemsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_HighPressureControlsSystemsMember" xlink:to="lab_wprt_HighPressureControlsSystemsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EquityMethodInvestmentsTextBlock_c68316e6-4d59-482d-aef9-1d350dfa8a55_terseLabel_en-US" xlink:label="lab_us-gaap_EquityMethodInvestmentsTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Long-Term Investments</link:label>
    <link:label id="lab_us-gaap_EquityMethodInvestmentsTextBlock_label_en-US" xlink:label="lab_us-gaap_EquityMethodInvestmentsTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity Method Investments [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityMethodInvestmentsTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EquityMethodInvestmentsTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EquityMethodInvestmentsTextBlock" xlink:to="lab_us-gaap_EquityMethodInvestmentsTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentNet_ad841838-6ab6-4d30-93b7-c31e7c3e17bc_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Property, plant and equipment (note 9)</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentNet_189dc983-7dcc-4be4-a3c5-238858b614c0_verboseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentNet" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Property, plant and equipment</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentNet_36fd54d4-3f2d-43ed-907f-f3d09bae3047_totalLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentNet" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net Book Value</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentNet_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Property, Plant and Equipment, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentNet" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SegmentReportingInformationLineItems_20f22057-38c4-4fa9-a8ab-547bd8d3321e_terseLabel_en-US" xlink:label="lab_us-gaap_SegmentReportingInformationLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Segment Reporting Information [Line Items]</link:label>
    <link:label id="lab_us-gaap_SegmentReportingInformationLineItems_label_en-US" xlink:label="lab_us-gaap_SegmentReportingInformationLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Segment Reporting Information [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingInformationLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SegmentReportingInformationLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems" xlink:to="lab_us-gaap_SegmentReportingInformationLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GeographicConcentrationRiskMember_71d20029-e116-44ce-aceb-c815ceff4a48_terseLabel_en-US" xlink:label="lab_us-gaap_GeographicConcentrationRiskMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.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_currency_INR_1d4d9354-6571-418e-b204-ff3cfea46bc2_terseLabel_en-US" xlink:label="lab_currency_INR" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Indian Rupee</link:label>
    <link:label id="lab_currency_INR_label_en-US" xlink:label="lab_currency_INR" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">India, Rupees</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_currency_INR" xlink:href="https://xbrl.sec.gov/currency/2025/currency-2025.xsd#currency_INR"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_currency_INR" xlink:to="lab_currency_INR" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccountsReceivable_57a5b308-a034-432c-b17d-572684446543_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.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_srt_AsiaMember_4ae36c56-b82b-42aa-868f-a2365abad729_terseLabel_en-US" xlink:label="lab_srt_AsiaMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Asia</link:label>
    <link:label id="lab_srt_AsiaMember_label_en-US" xlink:label="lab_srt_AsiaMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Asia [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_AsiaMember" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_AsiaMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_AsiaMember" xlink:to="lab_srt_AsiaMember" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_ConsolidationEliminationsMember_5f2b16bd-a376-4f31-80fd-95dabda1f18e_terseLabel_en-US" xlink:label="lab_srt_ConsolidationEliminationsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Consolidation, Eliminations</link:label>
    <link:label id="lab_srt_ConsolidationEliminationsMember_label_en-US" xlink:label="lab_srt_ConsolidationEliminationsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Consolidation, Eliminations [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationEliminationsMember" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ConsolidationEliminationsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ConsolidationEliminationsMember" xlink:to="lab_srt_ConsolidationEliminationsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ReceivablesAbstract_label_en-US" xlink:label="lab_us-gaap_ReceivablesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Receivables [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReceivablesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ReceivablesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ReceivablesAbstract" xlink:to="lab_us-gaap_ReceivablesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualNoncurrent_b2f7097f-a90f-4b2c-888f-80ecb74758d4_terseLabel_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Warranty liabilities</link:label>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualNoncurrent_label_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Product Warranty Accrual, Noncurrent</link:label>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualNoncurrent_documentation_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualNoncurrent" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Product Warranty Accrual, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualNoncurrent" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualNoncurrent" xlink:to="lab_wprt_DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract_949afe48-ab5f-474f-9234-b38e50b3ab15_terseLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Financing activities:</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash Provided by (Used in) Financing Activity, Continuing Operation [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract" xlink:to="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationSellingAndMarketingExpense_e6ae4770-b8f2-4ef4-9939-a1a19265851b_terseLabel_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationSellingAndMarketingExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Sales and marketing</link:label>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationSellingAndMarketingExpense_label_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationSellingAndMarketingExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Selling And Marketing Expense</link:label>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationSellingAndMarketingExpense_documentation_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationSellingAndMarketingExpense" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Selling And Marketing Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationSellingAndMarketingExpense" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationSellingAndMarketingExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_DisposalGroupIncludingDiscontinuedOperationSellingAndMarketingExpense" xlink:to="lab_wprt_DisposalGroupIncludingDiscontinuedOperationSellingAndMarketingExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_CespiraJointVentureMember_62cd5f86-43e5-4332-b0c8-1e38173c443e_terseLabel_en-US" xlink:label="lab_wprt_CespiraJointVentureMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cespira Joint Venture</link:label>
    <link:label id="lab_wprt_CespiraJointVentureMember_label_en-US" xlink:label="lab_wprt_CespiraJointVentureMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cespira Joint Venture [Member]</link:label>
    <link:label id="lab_wprt_CespiraJointVentureMember_documentation_en-US" xlink:label="lab_wprt_CespiraJointVentureMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Cespira Joint Venture</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_CespiraJointVentureMember" xlink:href="wprt-20250630.xsd#wprt_CespiraJointVentureMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_CespiraJointVentureMember" xlink:to="lab_wprt_CespiraJointVentureMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingIncomeLoss_1d4a1d11-3ece-4cbe-8be7-243dcf7e1308_totalLabel_en-US" xlink:label="lab_us-gaap_OperatingIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Loss from continuing operations</link:label>
    <link:label id="lab_us-gaap_OperatingIncomeLoss_e5f7ade5-15e7-4029-b2c7-3a6a79e1de96_negatedLabel_en-US" xlink:label="lab_us-gaap_OperatingIncomeLoss" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Operating losses</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" 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/2025/elts/us-gaap-2025.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_wprt_IncreaseDecreaseInWarrantyLiability_e8225811-716d-4aa4-bde5-dd9a05449bba_terseLabel_en-US" xlink:label="lab_wprt_IncreaseDecreaseInWarrantyLiability" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Warranty liability</link:label>
    <link:label id="lab_wprt_IncreaseDecreaseInWarrantyLiability_label_en-US" xlink:label="lab_wprt_IncreaseDecreaseInWarrantyLiability" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase (Decrease) In Warranty Liability</link:label>
    <link:label id="lab_wprt_IncreaseDecreaseInWarrantyLiability_documentation_en-US" xlink:label="lab_wprt_IncreaseDecreaseInWarrantyLiability" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Increase (Decrease) In Warranty Liability</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_IncreaseDecreaseInWarrantyLiability" xlink:href="wprt-20250630.xsd#wprt_IncreaseDecreaseInWarrantyLiability"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_IncreaseDecreaseInWarrantyLiability" xlink:to="lab_wprt_IncreaseDecreaseInWarrantyLiability" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RetainedEarningsAccumulatedDeficit_7edba870-89d4-4015-8a6a-9abce4d0ec63_terseLabel_en-US" xlink:label="lab_us-gaap_RetainedEarningsAccumulatedDeficit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.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_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_29e1f5f5-059c-4261-a233-d39eca0015a3_terseLabel_en-US" xlink:label="lab_us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Adjustments to reconcile net income (loss) to net cash used in continuing operating activities:</link:label>
    <link:label id="lab_us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_label_en-US" xlink:label="lab_us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Adjustment to Reconcile Net Income to Cash Provided by (Used in) Operating Activity, Noncash Item [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="lab_us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="arc" order="1"/>
    <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" 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/2025/elts/us-gaap-2025.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_currency_CAD_64919b03-b11e-4b04-9c81-68fe152ac4b8_terseLabel_en-US" xlink:label="lab_currency_CAD" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Canadian Dollar</link:label>
    <link:label id="lab_currency_CAD_label_en-US" xlink:label="lab_currency_CAD" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Canada, Dollars</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_currency_CAD" xlink:href="https://xbrl.sec.gov/currency/2025/currency-2025.xsd#currency_CAD"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_currency_CAD" xlink:to="lab_currency_CAD" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_CurrentFiscalYearEndDate_b6b1b727-1107-4224-9d86-1fede2af8b50_terseLabel_en-US" xlink:label="lab_dei_CurrentFiscalYearEndDate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/dei-2025.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_SubsequentEventTypeDomain_1af8abca-dd9a-415d-9e00-d74ab98fe6c7_terseLabel_en-US" xlink:label="lab_us-gaap_SubsequentEventTypeDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventTypeDomain" xlink:to="lab_us-gaap_SubsequentEventTypeDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ForeignCurrencyExchangeRateTranslation1_425dac13-f0c2-4a90-bb73-cc772c8c4c5b_terseLabel_en-US" xlink:label="lab_us-gaap_ForeignCurrencyExchangeRateTranslation1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Foreign current exchange rate at period end</link:label>
    <link:label id="lab_us-gaap_ForeignCurrencyExchangeRateTranslation1_label_en-US" xlink:label="lab_us-gaap_ForeignCurrencyExchangeRateTranslation1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Foreign Currency Exchange Rate, Translation</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignCurrencyExchangeRateTranslation1" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ForeignCurrencyExchangeRateTranslation1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ForeignCurrencyExchangeRateTranslation1" xlink:to="lab_us-gaap_ForeignCurrencyExchangeRateTranslation1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax_5ef56981-f0fc-462c-83cf-f158fd33cbe8_terseLabel_en-US" xlink:label="lab_us-gaap_DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Loss from classifying the discontinued operations as held-for-sale</link:label>
    <link:label id="lab_us-gaap_DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax_fceb0fca-e8e4-4e28-a0f3-8392ccc28dab_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Loss from classifying the discontinued operations as held-for-sale</link:label>
    <link:label id="lab_us-gaap_DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax_label_en-US" xlink:label="lab_us-gaap_DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Discontinued Operation, Provision for Loss (Gain) on Disposal, before Income Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax" xlink:to="lab_us-gaap_DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_EquitySecuritiesOtherOneMember_1e33f0b9-6ffd-42af-a755-de152a9ca8ec_verboseLabel_en-US" xlink:label="lab_wprt_EquitySecuritiesOtherOneMember" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Other equity instruments</link:label>
    <link:label id="lab_wprt_EquitySecuritiesOtherOneMember_label_en-US" xlink:label="lab_wprt_EquitySecuritiesOtherOneMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity Securities Other One [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_EquitySecuritiesOtherOneMember" xlink:href="wprt-20250630.xsd#wprt_EquitySecuritiesOtherOneMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_EquitySecuritiesOtherOneMember" xlink:to="lab_wprt_EquitySecuritiesOtherOneMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_AmendmentDescription_fce5c0fa-c6f2-4e59-9cb6-5f7eb9d1d215_terseLabel_en-US" xlink:label="lab_dei_AmendmentDescription" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Amendment Description</link:label>
    <link:label id="lab_dei_AmendmentDescription_label_en-US" xlink:label="lab_dei_AmendmentDescription" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Amendment Description</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_AmendmentDescription" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_AmendmentDescription"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_AmendmentDescription" xlink:to="lab_dei_AmendmentDescription" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent_c6655534-167b-4ea7-96ee-ff719c65e5f0_terseLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Current liabilities held for sale (note 5)</link:label>
    <link:label id="lab_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent_c93bd293-231a-4c15-a824-56add3275a05_totalLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Current liabilities classified as held for sale</link:label>
    <link:label id="lab_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent_label_en-US" xlink:label="lab_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Liabilities, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent" xlink:to="lab_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock_b2078e1a-3558-4491-9c42-bcb8b5d95919_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Accounts Receivable</link:label>
    <link:label id="lab_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Accounts, Notes, Loans and Financing Receivable [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" xlink:to="lab_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PayablesAndAccrualsAbstract_label_en-US" xlink:label="lab_us-gaap_PayablesAndAccrualsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Payables and Accruals [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PayablesAndAccrualsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PayablesAndAccrualsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PayablesAndAccrualsAbstract" xlink:to="lab_us-gaap_PayablesAndAccrualsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementTable_f3ca3d5b-2a6f-4775-bef8-3d3c6e1f72a1_terseLabel_en-US" xlink:label="lab_us-gaap_StatementTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.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_DeferredIncomeTaxExpenseBenefit_6501173f-611c-4534-b2d2-b137e6d3678a_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Deferred income tax (recovery)</link:label>
    <link:label id="lab_us-gaap_DeferredIncomeTaxExpenseBenefit_label_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Income Tax Expense (Benefit)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:to="lab_us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense_10d9f524-3034-443a-973b-477622389219_totalLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Operating expenses</link:label>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense_label_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Operating Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense" xlink:to="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_ProceedsFromCollectionOfHoldbackReceivable_51672b47-4763-48a2-ae7a-a6da5ca931a1_terseLabel_en-US" xlink:label="lab_wprt_ProceedsFromCollectionOfHoldbackReceivable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Proceeds from holdback receivable (note 6)</link:label>
    <link:label id="lab_wprt_ProceedsFromCollectionOfHoldbackReceivable_label_en-US" xlink:label="lab_wprt_ProceedsFromCollectionOfHoldbackReceivable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Proceeds From Collection Of Holdback Receivable</link:label>
    <link:label id="lab_wprt_ProceedsFromCollectionOfHoldbackReceivable_documentation_en-US" xlink:label="lab_wprt_ProceedsFromCollectionOfHoldbackReceivable" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Proceeds From Collection Of Holdback Receivable</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ProceedsFromCollectionOfHoldbackReceivable" xlink:href="wprt-20250630.xsd#wprt_ProceedsFromCollectionOfHoldbackReceivable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_ProceedsFromCollectionOfHoldbackReceivable" xlink:to="lab_wprt_ProceedsFromCollectionOfHoldbackReceivable" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_ScheduleOfGeographicalRevenueInformationTableTextBlock_c677d083-862b-4080-be3b-9d0145c30fe5_terseLabel_en-US" xlink:label="lab_wprt_ScheduleOfGeographicalRevenueInformationTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Geographical Revenue Information</link:label>
    <link:label id="lab_wprt_ScheduleOfGeographicalRevenueInformationTableTextBlock_label_en-US" xlink:label="lab_wprt_ScheduleOfGeographicalRevenueInformationTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule Of Geographical Revenue Information [Table Text Block]</link:label>
    <link:label id="lab_wprt_ScheduleOfGeographicalRevenueInformationTableTextBlock_documentation_en-US" xlink:label="lab_wprt_ScheduleOfGeographicalRevenueInformationTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Tabular disclosure for the company to provide geographical revenue information by individual countries.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ScheduleOfGeographicalRevenueInformationTableTextBlock" xlink:href="wprt-20250630.xsd#wprt_ScheduleOfGeographicalRevenueInformationTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_ScheduleOfGeographicalRevenueInformationTableTextBlock" xlink:to="lab_wprt_ScheduleOfGeographicalRevenueInformationTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_HoldbackTerm_df3fba88-763f-4b2b-ad15-b12d0d0486c2_terseLabel_en-US" xlink:label="lab_wprt_HoldbackTerm" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Purchase agreement holdback term (in years)</link:label>
    <link:label id="lab_wprt_HoldbackTerm_label_en-US" xlink:label="lab_wprt_HoldbackTerm" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Holdback, Term</link:label>
    <link:label id="lab_wprt_HoldbackTerm_documentation_en-US" xlink:label="lab_wprt_HoldbackTerm" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Holdback, Term</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_HoldbackTerm" xlink:href="wprt-20250630.xsd#wprt_HoldbackTerm"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_HoldbackTerm" xlink:to="lab_wprt_HoldbackTerm" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationLongTermDebtCurrent_adfefa47-2e87-4b2b-8db5-c8a893d96bd5_terseLabel_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationLongTermDebtCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Current portion of long-term debt</link:label>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationLongTermDebtCurrent_label_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationLongTermDebtCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Long-Term Debt, Current</link:label>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationLongTermDebtCurrent_documentation_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationLongTermDebtCurrent" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Long-Term Debt, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationLongTermDebtCurrent" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationLongTermDebtCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_DisposalGroupIncludingDiscontinuedOperationLongTermDebtCurrent" xlink:to="lab_wprt_DisposalGroupIncludingDiscontinuedOperationLongTermDebtCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_52d8af46-cbcf-441d-992f-a424107709be_terseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Weighted average common shares outstanding:</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_label_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Weighted Average Number of Shares Outstanding, Diluted [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:to="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent_3755b65f-79e0-4310-b5d2-9e8bfce3816f_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accounts payable and accrued liabilities (note 10)</link:label>
    <link:label id="lab_us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent_9eb25a6f-c1f7-482e-9ee3-1768a576ee3a_verboseLabel_en-US" xlink:label="lab_us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Accounts payable</link:label>
    <link:label id="lab_us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent_8e8d8ec2-9ca5-4e62-aabb-1acc9bc23fed_totalLabel_en-US" xlink:label="lab_us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Accounts payable and accrued liabilities</link:label>
    <link:label id="lab_us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent_label_en-US" xlink:label="lab_us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts Payable and Accrued Liabilities, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent" xlink:to="lab_us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_AmendmentFlag_97511cb5-e92f-4e4e-aa5c-df3135a13d3f_terseLabel_en-US" xlink:label="lab_dei_AmendmentFlag" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/dei-2025.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_OtherCommitmentsTable_68bc85d7-8645-4944-a9e6-85f84f9c0e03_terseLabel_en-US" xlink:label="lab_us-gaap_OtherCommitmentsTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other Commitments [Table]</link:label>
    <link:label id="lab_us-gaap_OtherCommitmentsTable_label_en-US" xlink:label="lab_us-gaap_OtherCommitmentsTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Commitments [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherCommitmentsTable" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherCommitmentsTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherCommitmentsTable" xlink:to="lab_us-gaap_OtherCommitmentsTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeasesTextBlock_5156f9a0-ed6f-478e-95ca-8930bd3c0df5_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeasesTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating leases right-of-use assets and lease liabilities</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" 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/2025/elts/us-gaap-2025.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_wprt_DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrowNumberOfTranches_ddc4fe6f-3332-4407-9bde-197b211a6a45_terseLabel_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrowNumberOfTranches" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Number of tranches for consideration held in escrow</link:label>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrowNumberOfTranches_label_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrowNumberOfTranches" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Consideration Held In Escrow, Number Of Tranches</link:label>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrowNumberOfTranches_documentation_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrowNumberOfTranches" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Consideration Held In Escrow, Number Of Tranches</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrowNumberOfTranches" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrowNumberOfTranches"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrowNumberOfTranches" xlink:to="lab_wprt_DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrowNumberOfTranches" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentLiabilities_c05ec0d1-7b12-4032-ae47-e20aad3149fe_terseLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentLiabilities" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other long-term liabilities</link:label>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentLiabilities_label_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentLiabilities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Other Liabilities, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentLiabilities" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentLiabilities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentLiabilities" xlink:to="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentLiabilities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AssetsNet_bb7dfc6d-6aae-47f8-b842-4c679dd00dca_totalLabel_en-US" xlink:label="lab_us-gaap_AssetsNet" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net assets</link:label>
    <link:label id="lab_us-gaap_AssetsNet_label_en-US" xlink:label="lab_us-gaap_AssetsNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsNet" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AssetsNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsNet" xlink:to="lab_us-gaap_AssetsNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_cd760339-d68a-451e-9c21-b02c158d06b1_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Weighted average discount rate</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Lease, Weighted Average Discount Rate, Percent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:to="lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_715e4fb8-4040-43f1-9100-d37d64129960_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Share-based Compensation, Stock Options, 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" 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/2025/elts/us-gaap-2025.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_PropertyPlantAndEquipmentTypeDomain_0260b952-8eda-4f22-aab6-80aeae3bc255_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Long-Lived Tangible Asset [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" 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/2025/elts/us-gaap-2025.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_d77b7da8-e8fb-4f62-ae25-08e24b92872b_terseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Basic (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" 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/2025/elts/us-gaap-2025.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_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_41d8d5db-a68f-4137-ac1a-1ae85e97ab08_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.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_InventoryWriteDown_52b0532a-b282-4ec5-bfdd-28dc1933a073_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryWriteDown" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Change in inventory write-downs</link:label>
    <link:label id="lab_us-gaap_InventoryWriteDown_e5468ea6-ca4f-4615-8db1-ac421b4775f0_verboseLabel_en-US" xlink:label="lab_us-gaap_InventoryWriteDown" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Inventory write-down to net realizable value</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" 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/2025/elts/us-gaap-2025.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_CostOfGoodsAndServicesSold_900bc0e1-f333-4199-9b95-120f6ed790b1_terseLabel_en-US" xlink:label="lab_us-gaap_CostOfGoodsAndServicesSold" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cost of revenue</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" xml:lang="en-US">Cost of Product and Service Sold</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.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_DisposalGroupClassificationDomain_9f8bd6bc-4710-4156-afeb-b551374a9ba2_terseLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupClassificationDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Disposal Group Classification [Domain]</link:label>
    <link:label id="lab_us-gaap_DisposalGroupClassificationDomain_label_en-US" xlink:label="lab_us-gaap_DisposalGroupClassificationDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group Classification [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupClassificationDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupClassificationDomain" xlink:to="lab_us-gaap_DisposalGroupClassificationDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RelatedPartyTransactionDomain_8ec3d142-492d-42bb-bbcf-376bc76ea7c5_terseLabel_en-US" xlink:label="lab_us-gaap_RelatedPartyTransactionDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.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_us-gaap_SegmentReportingAbstract_label_en-US" xlink:label="lab_us-gaap_SegmentReportingAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Segment Reporting [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SegmentReportingAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SegmentReportingAbstract" xlink:to="lab_us-gaap_SegmentReportingAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent_bd5c1649-a53d-4a11-a354-e5790d074942_terseLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Prepaid expenses</link:label>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent_label_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Prepaid and Other Assets, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent" xlink:to="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CostOfRevenue_9b9c0617-a858-4afe-9f21-f5ee879a4e95_terseLabel_en-US" xlink:label="lab_us-gaap_CostOfRevenue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cost of revenue</link:label>
    <link:label id="lab_us-gaap_CostOfRevenue_label_en-US" xlink:label="lab_us-gaap_CostOfRevenue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cost of Revenue</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfRevenue" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CostOfRevenue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CostOfRevenue" xlink:to="lab_us-gaap_CostOfRevenue" xlink:type="arc" order="1"/>
    <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" 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/2025/elts/us-gaap-2025.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_srt_ScenarioUnspecifiedDomain_f8f6bcde-2cce-4638-b806-0df61c58fa8d_terseLabel_en-US" xlink:label="lab_srt_ScenarioUnspecifiedDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/srt-2025.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_AccountsPayableTradeCurrent_ffaf9065-fa33-41ae-824e-461f1b25564d_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsPayableTradeCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Trade accounts payable</link:label>
    <link:label id="lab_us-gaap_AccountsPayableTradeCurrent_label_en-US" xlink:label="lab_us-gaap_AccountsPayableTradeCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts Payable, Trade, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableTradeCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountsPayableTradeCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsPayableTradeCurrent" xlink:to="lab_us-gaap_AccountsPayableTradeCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_bbdb0b28-b4ce-43d6-a489-b2f993357f9f_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockSharesIssued_8032391a-6fdf-4b95-91aa-8bd93184968f_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockSharesIssued" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Common shares, shares 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" 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/2025/elts/us-gaap-2025.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_wprt_ShareBasedPaymentArrangementExpenseSettledInCash_d6b697b1-182b-49d7-a1fd-90a875a8e75a_terseLabel_en-US" xlink:label="lab_wprt_ShareBasedPaymentArrangementExpenseSettledInCash" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Stock-based compensation settled in cash</link:label>
    <link:label id="lab_wprt_ShareBasedPaymentArrangementExpenseSettledInCash_label_en-US" xlink:label="lab_wprt_ShareBasedPaymentArrangementExpenseSettledInCash" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Payment Arrangement, Expense, Settled In Cash</link:label>
    <link:label id="lab_wprt_ShareBasedPaymentArrangementExpenseSettledInCash_documentation_en-US" xlink:label="lab_wprt_ShareBasedPaymentArrangementExpenseSettledInCash" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Share-Based Payment Arrangement, Expense, Settled In Cash</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ShareBasedPaymentArrangementExpenseSettledInCash" xlink:href="wprt-20250630.xsd#wprt_ShareBasedPaymentArrangementExpenseSettledInCash"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_ShareBasedPaymentArrangementExpenseSettledInCash" xlink:to="lab_wprt_ShareBasedPaymentArrangementExpenseSettledInCash" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_8952a9a9-4b6f-49d1-a953-a0554e3c4260_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Remaining lease term (in years)</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" 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/2025/elts/us-gaap-2025.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_wprt_PerformanceStockUnitsMember_af404f74-93a1-4c3c-863d-4f4b88216544_terseLabel_en-US" xlink:label="lab_wprt_PerformanceStockUnitsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">PSU's</link:label>
    <link:label id="lab_wprt_PerformanceStockUnitsMember_label_en-US" xlink:label="lab_wprt_PerformanceStockUnitsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Performance Stock Units [Member]</link:label>
    <link:label id="lab_wprt_PerformanceStockUnitsMember_documentation_en-US" xlink:label="lab_wprt_PerformanceStockUnitsMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Performance Stock Units</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_PerformanceStockUnitsMember" xlink:href="wprt-20250630.xsd#wprt_PerformanceStockUnitsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_PerformanceStockUnitsMember" xlink:to="lab_wprt_PerformanceStockUnitsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet_fcbfeef7-c53c-4ebd-b573-3e23e5b1fcd6_terseLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accounts receivable</link:label>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet_label_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Accounts, Notes and Loans Receivable, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet" xlink:to="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_ContractualObligationsTypeDomain_81eec2d2-8618-4c45-96a8-f56d297eceff_terseLabel_en-US" xlink:label="lab_wprt_ContractualObligationsTypeDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Contractual Obligations Type [Domain]</link:label>
    <link:label id="lab_wprt_ContractualObligationsTypeDomain_label_en-US" xlink:label="lab_wprt_ContractualObligationsTypeDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Contractual Obligations Type [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ContractualObligationsTypeDomain" xlink:href="wprt-20250630.xsd#wprt_ContractualObligationsTypeDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_ContractualObligationsTypeDomain" xlink:to="lab_wprt_ContractualObligationsTypeDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationGoodwillNoncurrent_73542d78-7c58-4b6e-a90c-cf6182c102b7_terseLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationGoodwillNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Goodwill</link:label>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationGoodwillNoncurrent_label_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationGoodwillNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Goodwill, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationGoodwillNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationGoodwillNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationGoodwillNoncurrent" xlink:to="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationGoodwillNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CorporateNonSegmentMember_8df9808c-704b-4696-bff3-52aab8063d82_terseLabel_en-US" xlink:label="lab_us-gaap_CorporateNonSegmentMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Corporate</link:label>
    <link:label id="lab_us-gaap_CorporateNonSegmentMember_label_en-US" xlink:label="lab_us-gaap_CorporateNonSegmentMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Segment Reporting, Reconciling Item, Corporate Nonsegment [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CorporateNonSegmentMember" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CorporateNonSegmentMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CorporateNonSegmentMember" xlink:to="lab_us-gaap_CorporateNonSegmentMember" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_DebtInstrumentCovenantMinimumCashRequirement_cc518203-069b-4756-8206-72cdaccc6ee0_terseLabel_en-US" xlink:label="lab_wprt_DebtInstrumentCovenantMinimumCashRequirement" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Minimum cash requirement</link:label>
    <link:label id="lab_wprt_DebtInstrumentCovenantMinimumCashRequirement_label_en-US" xlink:label="lab_wprt_DebtInstrumentCovenantMinimumCashRequirement" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Instrument, Covenant, Minimum Cash Requirement</link:label>
    <link:label id="lab_wprt_DebtInstrumentCovenantMinimumCashRequirement_documentation_en-US" xlink:label="lab_wprt_DebtInstrumentCovenantMinimumCashRequirement" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Debt Instrument, Covenant, Minimum Cash Requirement</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DebtInstrumentCovenantMinimumCashRequirement" xlink:href="wprt-20250630.xsd#wprt_DebtInstrumentCovenantMinimumCashRequirement"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_DebtInstrumentCovenantMinimumCashRequirement" xlink:to="lab_wprt_DebtInstrumentCovenantMinimumCashRequirement" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsDisposalGroupIncludingDiscontinuedOperations_4c7d1d0e-00a0-44da-9273-c13749f7847f_terseLabel_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsDisposalGroupIncludingDiscontinuedOperations" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Less: cash and cash equivalents from discontinued operations, end of period (including restricted cash)</link:label>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsDisposalGroupIncludingDiscontinuedOperations_label_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsDisposalGroupIncludingDiscontinuedOperations" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash, Cash Equivalent, Restricted Cash, and Restricted Cash Equivalent, Discontinued Operation</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsDisposalGroupIncludingDiscontinuedOperations" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsDisposalGroupIncludingDiscontinuedOperations"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsDisposalGroupIncludingDiscontinuedOperations" xlink:to="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsDisposalGroupIncludingDiscontinuedOperations" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear_6e518802-64c0-408f-9bc0-64fdfab8f0f1_terseLabel_en-US" xlink:label="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Remainder of 2025</link:label>
    <link:label id="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear_label_en-US" xlink:label="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Long-Term Debt, Maturity, Remainder of Fiscal Year</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear" xlink:to="lab_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_Liabilities_a285bc46-5d14-4791-a562-bdebedc8cf5b_totalLabel_en-US" xlink:label="lab_us-gaap_Liabilities" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.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_srt_CurrencyAxis_565f4069-4619-4beb-a4d7-3d6246cc5f2e_terseLabel_en-US" xlink:label="lab_srt_CurrencyAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Currency [Axis]</link:label>
    <link:label id="lab_srt_CurrencyAxis_label_en-US" xlink:label="lab_srt_CurrencyAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Currency [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CurrencyAxis" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_CurrencyAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_CurrencyAxis" xlink:to="lab_srt_CurrencyAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_CumminsWestportIncMember_5ec4d0b5-2d3a-472b-8fad-b105c28ad7e8_terseLabel_en-US" xlink:label="lab_wprt_CumminsWestportIncMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cummins Westport Inc</link:label>
    <link:label id="lab_wprt_CumminsWestportIncMember_label_en-US" xlink:label="lab_wprt_CumminsWestportIncMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cummins Westport Inc [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_CumminsWestportIncMember" xlink:href="wprt-20250630.xsd#wprt_CumminsWestportIncMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_CumminsWestportIncMember" xlink:to="lab_wprt_CumminsWestportIncMember" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_OtherEquityInstrument_1a514fc6-57b2-453e-9a4d-4debab82774c_terseLabel_en-US" xlink:label="lab_wprt_OtherEquityInstrument" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other equity instruments</link:label>
    <link:label id="lab_wprt_OtherEquityInstrument_label_en-US" xlink:label="lab_wprt_OtherEquityInstrument" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Equity Instrument</link:label>
    <link:label id="lab_wprt_OtherEquityInstrument_documentation_en-US" xlink:label="lab_wprt_OtherEquityInstrument" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents the value assigned to issued Units and the amounts accrued are recorded as other equity instruments. As Units are exercised and the underlying shares are issued from the treasury of the Company, the value is reclassified to share capital.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_OtherEquityInstrument" xlink:href="wprt-20250630.xsd#wprt_OtherEquityInstrument"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_OtherEquityInstrument" xlink:to="lab_wprt_OtherEquityInstrument" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PrepaidExpenseCurrent_db3c8f2a-f5a1-48a5-98dc-738ebe4a658f_terseLabel_en-US" xlink:label="lab_us-gaap_PrepaidExpenseCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Prepaid expenses</link:label>
    <link:label id="lab_us-gaap_PrepaidExpenseCurrent_label_en-US" xlink:label="lab_us-gaap_PrepaidExpenseCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Prepaid Expense, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PrepaidExpenseCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PrepaidExpenseCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PrepaidExpenseCurrent" xlink:to="lab_us-gaap_PrepaidExpenseCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherLiabilitiesCurrent_1bbd2fba-4254-465f-a866-2ea80536d170_terseLabel_en-US" xlink:label="lab_us-gaap_OtherLiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other current liabilities</link:label>
    <link:label id="lab_us-gaap_OtherLiabilitiesCurrent_label_en-US" xlink:label="lab_us-gaap_OtherLiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Liabilities, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherLiabilitiesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherLiabilitiesCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherLiabilitiesCurrent" xlink:to="lab_us-gaap_OtherLiabilitiesCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_OtherEquityAccountedForInvesteesMember_0c39f7e5-c86b-4865-9caa-e3238e722944_terseLabel_en-US" xlink:label="lab_wprt_OtherEquityAccountedForInvesteesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other equity-accounted investees</link:label>
    <link:label id="lab_wprt_OtherEquityAccountedForInvesteesMember_label_en-US" xlink:label="lab_wprt_OtherEquityAccountedForInvesteesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Equity Accounted for Investees [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_OtherEquityAccountedForInvesteesMember" xlink:href="wprt-20250630.xsd#wprt_OtherEquityAccountedForInvesteesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_OtherEquityAccountedForInvesteesMember" xlink:to="lab_wprt_OtherEquityAccountedForInvesteesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_ScheduleOfForeignCurrencyExchangeRateTranslationTableTextBlock_637cbc4a-3ae6-497c-a2fc-034880afec4b_terseLabel_en-US" xlink:label="lab_wprt_ScheduleOfForeignCurrencyExchangeRateTranslationTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Foreign Currency Exchange Rate Translation</link:label>
    <link:label id="lab_wprt_ScheduleOfForeignCurrencyExchangeRateTranslationTableTextBlock_label_en-US" xlink:label="lab_wprt_ScheduleOfForeignCurrencyExchangeRateTranslationTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule Of Foreign Currency Exchange Rate Translation [Table Text Block]</link:label>
    <link:label id="lab_wprt_ScheduleOfForeignCurrencyExchangeRateTranslationTableTextBlock_documentation_en-US" xlink:label="lab_wprt_ScheduleOfForeignCurrencyExchangeRateTranslationTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Schedule Of Foreign Currency Exchange Rate Translation</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ScheduleOfForeignCurrencyExchangeRateTranslationTableTextBlock" xlink:href="wprt-20250630.xsd#wprt_ScheduleOfForeignCurrencyExchangeRateTranslationTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_ScheduleOfForeignCurrencyExchangeRateTranslationTableTextBlock" xlink:to="lab_wprt_ScheduleOfForeignCurrencyExchangeRateTranslationTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent_1017a72f-0abd-4f63-94c0-52563e59b9ca_terseLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Intangible assets</link:label>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent_label_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Intangible Assets, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent" xlink:to="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementLineItems_171e1c67-e6a0-4714-8ec4-1ae7aa8d3013_terseLabel_en-US" xlink:label="lab_us-gaap_StatementLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.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_srt_ConsolidationItemsAxis_e1f73420-f9f0-44ce-85a2-f4935a0aa28d_terseLabel_en-US" xlink:label="lab_srt_ConsolidationItemsAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Consolidation Items [Axis]</link:label>
    <link:label id="lab_srt_ConsolidationItemsAxis_label_en-US" xlink:label="lab_srt_ConsolidationItemsAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Consolidation Items [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsAxis" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ConsolidationItemsAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ConsolidationItemsAxis" xlink:to="lab_srt_ConsolidationItemsAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationInventoryCurrent_c7aea970-1ee3-4587-a70a-17083b76c7e6_terseLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationInventoryCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Inventories</link:label>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationInventoryCurrent_label_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationInventoryCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Inventory, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationInventoryCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationInventoryCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationInventoryCurrent" xlink:to="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationInventoryCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockMember_398eb7ac-65ec-4c4e-989c-b965552e7790_verboseLabel_en-US" xlink:label="lab_us-gaap_CommonStockMember" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Common stock</link:label>
    <link:label id="lab_us-gaap_CommonStockMember_b60fcb70-f4c1-42a8-a5fe-ab799ab03031_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" 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" 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/2025/elts/us-gaap-2025.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_wprt_ResearchAndDevelopmentExpenseAdjustmentForRounding_d582b19b-f4fb-478e-a01b-46363e3e5721_terseLabel_en-US" xlink:label="lab_wprt_ResearchAndDevelopmentExpenseAdjustmentForRounding" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Research and development</link:label>
    <link:label id="lab_wprt_ResearchAndDevelopmentExpenseAdjustmentForRounding_label_en-US" xlink:label="lab_wprt_ResearchAndDevelopmentExpenseAdjustmentForRounding" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Research and Development Expense, Adjustment for Rounding</link:label>
    <link:label id="lab_wprt_ResearchAndDevelopmentExpenseAdjustmentForRounding_documentation_en-US" xlink:label="lab_wprt_ResearchAndDevelopmentExpenseAdjustmentForRounding" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Research and Development Expense, Adjustment for Rounding</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ResearchAndDevelopmentExpenseAdjustmentForRounding" xlink:href="wprt-20250630.xsd#wprt_ResearchAndDevelopmentExpenseAdjustmentForRounding"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_ResearchAndDevelopmentExpenseAdjustmentForRounding" xlink:to="lab_wprt_ResearchAndDevelopmentExpenseAdjustmentForRounding" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_HeldForSaleDisposalGroupAndDiscontinuedOperationsPolicyPolicyTextBlock_f0a82112-e448-4412-8555-15076fd2dcd1_terseLabel_en-US" xlink:label="lab_wprt_HeldForSaleDisposalGroupAndDiscontinuedOperationsPolicyPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Held-for-sale disposal group and discontinued operations</link:label>
    <link:label id="lab_wprt_HeldForSaleDisposalGroupAndDiscontinuedOperationsPolicyPolicyTextBlock_label_en-US" xlink:label="lab_wprt_HeldForSaleDisposalGroupAndDiscontinuedOperationsPolicyPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Held-For-Sale Disposal Group And Discontinued Operations, Policy [Policy Text Block]</link:label>
    <link:label id="lab_wprt_HeldForSaleDisposalGroupAndDiscontinuedOperationsPolicyPolicyTextBlock_documentation_en-US" xlink:label="lab_wprt_HeldForSaleDisposalGroupAndDiscontinuedOperationsPolicyPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Held-For-Sale Disposal Group And Discontinued Operations, Policy</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_HeldForSaleDisposalGroupAndDiscontinuedOperationsPolicyPolicyTextBlock" xlink:href="wprt-20250630.xsd#wprt_HeldForSaleDisposalGroupAndDiscontinuedOperationsPolicyPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_HeldForSaleDisposalGroupAndDiscontinuedOperationsPolicyPolicyTextBlock" xlink:to="lab_wprt_HeldForSaleDisposalGroupAndDiscontinuedOperationsPolicyPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrow_7feee279-dacd-4364-b43c-ba1ef9ab75cf_terseLabel_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrow" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Consideration held in escrow</link:label>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrow_label_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrow" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Consideration Held In Escrow</link:label>
    <link:label id="lab_wprt_DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrow_documentation_en-US" xlink:label="lab_wprt_DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrow" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Consideration Held In Escrow</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrow" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrow"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_wprt_DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrow" xlink:to="lab_wprt_DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrow" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_d1329e39-da08-4263-9748-fa347f8fd288_totalLabel_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net decrease in cash and cash equivalents</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" xml:lang="en-US">Cash, Cash Equivalent, Restricted Cash, and Restricted Cash Equivalent, Period Increase (Decrease), Including Exchange Rate Effect and Discontinued Operation</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.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:labelLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.PRE
<SEQUENCE>7
<FILENAME>wprt-20250630_pre.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with the Workiva Platform-->
<!--Copyright 2025 Workiva-->
<!--r:ad297659-f296-4abb-b3c8-4f222db3fa0c,g:5bd34070-f794-402d-a468-34e565af0565-->
<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.westport.com/role/CoverPage" xlink:type="simple" xlink:href="wprt-20250630.xsd#CoverPage"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/CoverPage" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_dei_CoverAbstract_8d097e31-d644-478b-825c-cc08b5188f8d" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_CoverAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentType_10439f5a-d6f6-4f7b-ab84-79ceed94d983" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_DocumentType"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_8d097e31-d644-478b-825c-cc08b5188f8d" xlink:to="loc_dei_DocumentType_10439f5a-d6f6-4f7b-ab84-79ceed94d983" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityRegistrantName_48cfe027-edce-4903-99f2-d3de461e0604" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityRegistrantName"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_8d097e31-d644-478b-825c-cc08b5188f8d" xlink:to="loc_dei_EntityRegistrantName_48cfe027-edce-4903-99f2-d3de461e0604" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_AmendmentDescription_95f58a60-d965-4a07-8e12-386b1c87ecff" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_AmendmentDescription"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_8d097e31-d644-478b-825c-cc08b5188f8d" xlink:to="loc_dei_AmendmentDescription_95f58a60-d965-4a07-8e12-386b1c87ecff" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCentralIndexKey_550aafab-1cb8-4d6d-8eb9-5c1c5b157d52" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityCentralIndexKey"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_8d097e31-d644-478b-825c-cc08b5188f8d" xlink:to="loc_dei_EntityCentralIndexKey_550aafab-1cb8-4d6d-8eb9-5c1c5b157d52" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentPeriodEndDate_3e754a09-82a3-45a9-8dff-b3d5af219785" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_DocumentPeriodEndDate"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_8d097e31-d644-478b-825c-cc08b5188f8d" xlink:to="loc_dei_DocumentPeriodEndDate_3e754a09-82a3-45a9-8dff-b3d5af219785" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_AmendmentFlag_c066b2d1-be97-4c67-9b92-e10bf83765ce" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_AmendmentFlag"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_8d097e31-d644-478b-825c-cc08b5188f8d" xlink:to="loc_dei_AmendmentFlag_c066b2d1-be97-4c67-9b92-e10bf83765ce" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CurrentFiscalYearEndDate_cc80c54e-4c0f-4886-a771-541400345614" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_CurrentFiscalYearEndDate"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_8d097e31-d644-478b-825c-cc08b5188f8d" xlink:to="loc_dei_CurrentFiscalYearEndDate_cc80c54e-4c0f-4886-a771-541400345614" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentFiscalYearFocus_8890b2d5-8ab7-49a3-92e1-cfef1aff3065" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_DocumentFiscalYearFocus"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_8d097e31-d644-478b-825c-cc08b5188f8d" xlink:to="loc_dei_DocumentFiscalYearFocus_8890b2d5-8ab7-49a3-92e1-cfef1aff3065" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentFiscalPeriodFocus_51b007e8-f375-459b-b420-e94d8f4f452a" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_DocumentFiscalPeriodFocus"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_8d097e31-d644-478b-825c-cc08b5188f8d" xlink:to="loc_dei_DocumentFiscalPeriodFocus_51b007e8-f375-459b-b420-e94d8f4f452a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited" xlink:type="simple" xlink:href="wprt-20250630.xsd#CondensedConsolidatedInterimBalanceSheetsunaudited"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfFinancialPositionAbstract_505a6061-14b6-4060-9698-8c4594f1d942" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StatementOfFinancialPositionAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsAbstract_124e8f77-979a-4319-a9f2-462b461addb5" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AssetsAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_505a6061-14b6-4060-9698-8c4594f1d942" xlink:to="loc_us-gaap_AssetsAbstract_124e8f77-979a-4319-a9f2-462b461addb5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrentAbstract_35a9fbe6-91fb-48f2-a164-d037dd2b84d0" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AssetsCurrentAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_124e8f77-979a-4319-a9f2-462b461addb5" xlink:to="loc_us-gaap_AssetsCurrentAbstract_35a9fbe6-91fb-48f2-a164-d037dd2b84d0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_728b5026-8d93-43dd-9d69-0b9ba2413c1c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_35a9fbe6-91fb-48f2-a164-d037dd2b84d0" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_728b5026-8d93-43dd-9d69-0b9ba2413c1c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent_11127e8c-ee22-4ef8-8b3b-eb53177f8036" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountsReceivableNetCurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_35a9fbe6-91fb-48f2-a164-d037dd2b84d0" xlink:to="loc_us-gaap_AccountsReceivableNetCurrent_11127e8c-ee22-4ef8-8b3b-eb53177f8036" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryNet_aa15ec8b-60b7-4285-abcd-790d0221793d" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InventoryNet"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_35a9fbe6-91fb-48f2-a164-d037dd2b84d0" xlink:to="loc_us-gaap_InventoryNet_aa15ec8b-60b7-4285-abcd-790d0221793d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PrepaidExpenseCurrent_85d79f54-b744-48bc-b060-d6f1860a8c73" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PrepaidExpenseCurrent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_35a9fbe6-91fb-48f2-a164-d037dd2b84d0" xlink:to="loc_us-gaap_PrepaidExpenseCurrent_85d79f54-b744-48bc-b060-d6f1860a8c73" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent_ebb56c70-329e-4aae-996a-e2fc89c5f927" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_35a9fbe6-91fb-48f2-a164-d037dd2b84d0" xlink:to="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent_ebb56c70-329e-4aae-996a-e2fc89c5f927" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrent_64c16ee7-56d4-4902-b27d-dbf8f66d81fd" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AssetsCurrent"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_35a9fbe6-91fb-48f2-a164-d037dd2b84d0" xlink:to="loc_us-gaap_AssetsCurrent_64c16ee7-56d4-4902-b27d-dbf8f66d81fd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermInvestments_5e8add4d-d144-4aa0-a1a2-3ccf2768f79d" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LongTermInvestments"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_124e8f77-979a-4319-a9f2-462b461addb5" xlink:to="loc_us-gaap_LongTermInvestments_5e8add4d-d144-4aa0-a1a2-3ccf2768f79d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_eecca8ba-fdd7-42db-a911-318fa2b185cf" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_124e8f77-979a-4319-a9f2-462b461addb5" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentNet_eecca8ba-fdd7-42db-a911-318fa2b185cf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset_c986700d-3766-48a5-942a-c8d946d859ac" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OperatingLeaseRightOfUseAsset"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_124e8f77-979a-4319-a9f2-462b461addb5" xlink:to="loc_us-gaap_OperatingLeaseRightOfUseAsset_c986700d-3766-48a5-942a-c8d946d859ac" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAssetsNoncurrent_950ab4b0-a08a-4750-b91b-8edfe97b555d" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherAssetsNoncurrent"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_124e8f77-979a-4319-a9f2-462b461addb5" xlink:to="loc_us-gaap_OtherAssetsNoncurrent_950ab4b0-a08a-4750-b91b-8edfe97b555d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent_bc6140de-0bcd-407b-a770-71d02ccce55b" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_124e8f77-979a-4319-a9f2-462b461addb5" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent_bc6140de-0bcd-407b-a770-71d02ccce55b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Assets_255d6d35-095b-42df-90f0-83449bd1e327" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_Assets"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_124e8f77-979a-4319-a9f2-462b461addb5" xlink:to="loc_us-gaap_Assets_255d6d35-095b-42df-90f0-83449bd1e327" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_578f68c9-a77f-465e-8e80-fe5b89b8fc52" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_505a6061-14b6-4060-9698-8c4594f1d942" xlink:to="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_578f68c9-a77f-465e-8e80-fe5b89b8fc52" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrentAbstract_a0e365ab-06f3-48f7-9abf-9d28e9eb7980" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LiabilitiesCurrentAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_578f68c9-a77f-465e-8e80-fe5b89b8fc52" xlink:to="loc_us-gaap_LiabilitiesCurrentAbstract_a0e365ab-06f3-48f7-9abf-9d28e9eb7980" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent_c8c656c5-f5a6-4769-9dc5-044350ad4700" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_a0e365ab-06f3-48f7-9abf-9d28e9eb7980" xlink:to="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent_c8c656c5-f5a6-4769-9dc5-044350ad4700" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_45f330c6-9035-4fa8-af60-b84cea0048c5" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_a0e365ab-06f3-48f7-9abf-9d28e9eb7980" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_45f330c6-9035-4fa8-af60-b84cea0048c5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent_e7787971-e3bc-4701-a4d9-bd8b660c6667" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_a0e365ab-06f3-48f7-9abf-9d28e9eb7980" xlink:to="loc_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent_e7787971-e3bc-4701-a4d9-bd8b660c6667" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyAccrualClassifiedCurrent_7d3a7634-441a-4180-b365-413da063ac89" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ProductWarrantyAccrualClassifiedCurrent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_a0e365ab-06f3-48f7-9abf-9d28e9eb7980" xlink:to="loc_us-gaap_ProductWarrantyAccrualClassifiedCurrent_7d3a7634-441a-4180-b365-413da063ac89" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent_d69ec9e7-033f-4bb0-acd5-6bac3bb4694d" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_a0e365ab-06f3-48f7-9abf-9d28e9eb7980" xlink:to="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent_d69ec9e7-033f-4bb0-acd5-6bac3bb4694d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrent_56fedf53-d9fa-4d3e-ade4-c8eb6a90e18d" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LiabilitiesCurrent"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_a0e365ab-06f3-48f7-9abf-9d28e9eb7980" xlink:to="loc_us-gaap_LiabilitiesCurrent_56fedf53-d9fa-4d3e-ade4-c8eb6a90e18d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_ae351f6a-2cdf-4827-9451-f2624a908c44" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_578f68c9-a77f-465e-8e80-fe5b89b8fc52" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_ae351f6a-2cdf-4827-9451-f2624a908c44" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtAndCapitalLeaseObligations_e92317a5-a3ac-4c89-99aa-1054e84353cd" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligations"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_578f68c9-a77f-465e-8e80-fe5b89b8fc52" xlink:to="loc_us-gaap_LongTermDebtAndCapitalLeaseObligations_e92317a5-a3ac-4c89-99aa-1054e84353cd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherLiabilitiesNoncurrent_43c059bb-6cd4-4f8c-ae82-afa33381d677" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherLiabilitiesNoncurrent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_578f68c9-a77f-465e-8e80-fe5b89b8fc52" xlink:to="loc_us-gaap_OtherLiabilitiesNoncurrent_43c059bb-6cd4-4f8c-ae82-afa33381d677" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent_3b314d92-53c2-437d-bf3e-74657ac9c8f1" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_578f68c9-a77f-465e-8e80-fe5b89b8fc52" xlink:to="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent_3b314d92-53c2-437d-bf3e-74657ac9c8f1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Liabilities_c69fd0cd-1528-4225-bb8d-5e19a0e16ed7" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_Liabilities"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_578f68c9-a77f-465e-8e80-fe5b89b8fc52" xlink:to="loc_us-gaap_Liabilities_c69fd0cd-1528-4225-bb8d-5e19a0e16ed7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract_c33a21ac-d7af-4a2d-9fdb-359371d1cf70" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_578f68c9-a77f-465e-8e80-fe5b89b8fc52" xlink:to="loc_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract_c33a21ac-d7af-4a2d-9fdb-359371d1cf70" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityAbstract_fee546ea-0c3f-4054-9bb9-2859c3e37f96" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EquityAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract_c33a21ac-d7af-4a2d-9fdb-359371d1cf70" xlink:to="loc_us-gaap_EquityAbstract_fee546ea-0c3f-4054-9bb9-2859c3e37f96" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockValue_b79eaa0a-1e09-4b7c-b654-de86ee0f9d41" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommonStockValue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_fee546ea-0c3f-4054-9bb9-2859c3e37f96" xlink:to="loc_us-gaap_CommonStockValue_b79eaa0a-1e09-4b7c-b654-de86ee0f9d41" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_OtherEquityInstrument_d29fad2d-bc1b-486b-a93b-dac93f6371ec" xlink:href="wprt-20250630.xsd#wprt_OtherEquityInstrument"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract_c33a21ac-d7af-4a2d-9fdb-359371d1cf70" xlink:to="loc_wprt_OtherEquityInstrument_d29fad2d-bc1b-486b-a93b-dac93f6371ec" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalCommonStock_39d235d0-c7e1-41b8-bf9a-b397af205533" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AdditionalPaidInCapitalCommonStock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract_c33a21ac-d7af-4a2d-9fdb-359371d1cf70" xlink:to="loc_us-gaap_AdditionalPaidInCapitalCommonStock_39d235d0-c7e1-41b8-bf9a-b397af205533" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit_cec89922-f11d-44b3-9fa5-9baa5c2e8eab" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RetainedEarningsAccumulatedDeficit"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract_c33a21ac-d7af-4a2d-9fdb-359371d1cf70" xlink:to="loc_us-gaap_RetainedEarningsAccumulatedDeficit_cec89922-f11d-44b3-9fa5-9baa5c2e8eab" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_d1fadec8-1edf-485f-b389-49a460cd3efd" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract_c33a21ac-d7af-4a2d-9fdb-359371d1cf70" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_d1fadec8-1edf-485f-b389-49a460cd3efd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_edf8965d-4c9a-495d-97f9-eadf584ed50c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StockholdersEquity"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract_c33a21ac-d7af-4a2d-9fdb-359371d1cf70" xlink:to="loc_us-gaap_StockholdersEquity_edf8965d-4c9a-495d-97f9-eadf584ed50c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquity_c9b713e3-8ff1-4d6c-bca3-ab91ca0835c6" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LiabilitiesAndStockholdersEquity"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_578f68c9-a77f-465e-8e80-fe5b89b8fc52" xlink:to="loc_us-gaap_LiabilitiesAndStockholdersEquity_c9b713e3-8ff1-4d6c-bca3-ab91ca0835c6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingencies_ab3cfa32-3d4f-4622-beb6-cefcbfc32a23" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommitmentsAndContingencies"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_578f68c9-a77f-465e-8e80-fe5b89b8fc52" xlink:to="loc_us-gaap_CommitmentsAndContingencies_ab3cfa32-3d4f-4622-beb6-cefcbfc32a23" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunauditedParenthetical" xlink:type="simple" xlink:href="wprt-20250630.xsd#CondensedConsolidatedInterimBalanceSheetsunauditedParenthetical"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunauditedParenthetical" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfFinancialPositionAbstract_d21b9f3a-047d-45ef-bded-060453eaf7d6" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StatementOfFinancialPositionAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesIssued_d09bab08-f5a6-4a2b-b26b-934885176cc8" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommonStockSharesIssued"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_d21b9f3a-047d-45ef-bded-060453eaf7d6" xlink:to="loc_us-gaap_CommonStockSharesIssued_d09bab08-f5a6-4a2b-b26b-934885176cc8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesOutstanding_45d3331f-5028-4c0a-8442-1f2523499200" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommonStockSharesOutstanding"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_d21b9f3a-047d-45ef-bded-060453eaf7d6" xlink:to="loc_us-gaap_CommonStockSharesOutstanding_45d3331f-5028-4c0a-8442-1f2523499200" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited" xlink:type="simple" xlink:href="wprt-20250630.xsd#CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementAbstract_b2e8e8cf-8d3b-48bf-81c6-491605b26ac7" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeStatementAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_cacb4d58-18a9-48a0-89fa-9d43f6eddfa7" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_b2e8e8cf-8d3b-48bf-81c6-491605b26ac7" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_cacb4d58-18a9-48a0-89fa-9d43f6eddfa7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold_7b248ada-4a45-463f-98c9-8d21cc241a8b" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CostOfGoodsAndServicesSold"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_b2e8e8cf-8d3b-48bf-81c6-491605b26ac7" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSold_7b248ada-4a45-463f-98c9-8d21cc241a8b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit_7881549d-d150-4f80-b215-7bb3c70a02da" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_GrossProfit"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_b2e8e8cf-8d3b-48bf-81c6-491605b26ac7" xlink:to="loc_us-gaap_GrossProfit_7881549d-d150-4f80-b215-7bb3c70a02da" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfRevenueAbstract_8c39c9ad-59bb-44b5-858a-9d961e1b88e5" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CostOfRevenueAbstract"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_b2e8e8cf-8d3b-48bf-81c6-491605b26ac7" xlink:to="loc_us-gaap_CostOfRevenueAbstract_8c39c9ad-59bb-44b5-858a-9d961e1b88e5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpense_00b215a3-58dd-492c-bc2a-9364d84f35c6" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ResearchAndDevelopmentExpense"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CostOfRevenueAbstract_8c39c9ad-59bb-44b5-858a-9d961e1b88e5" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpense_00b215a3-58dd-492c-bc2a-9364d84f35c6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpense_a3d78eee-aaf2-4287-a34b-a0aa29e3bcf7" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_GeneralAndAdministrativeExpense"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CostOfRevenueAbstract_8c39c9ad-59bb-44b5-858a-9d961e1b88e5" xlink:to="loc_us-gaap_GeneralAndAdministrativeExpense_a3d78eee-aaf2-4287-a34b-a0aa29e3bcf7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingAndMarketingExpense_0dce97a6-f639-43b7-a2c1-b8a77f9cd5c6" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SellingAndMarketingExpense"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CostOfRevenueAbstract_8c39c9ad-59bb-44b5-858a-9d961e1b88e5" xlink:to="loc_us-gaap_SellingAndMarketingExpense_0dce97a6-f639-43b7-a2c1-b8a77f9cd5c6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_e716a334-0355-4e08-af73-447c29602a92" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ForeignCurrencyTransactionGainLossBeforeTax"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CostOfRevenueAbstract_8c39c9ad-59bb-44b5-858a-9d961e1b88e5" xlink:to="loc_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_e716a334-0355-4e08-af73-447c29602a92" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DepreciationAmortizationAndAccretionNet_ff0aedcb-1cca-4b6d-a2ea-f409f9a640c8" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DepreciationAmortizationAndAccretionNet"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CostOfRevenueAbstract_8c39c9ad-59bb-44b5-858a-9d961e1b88e5" xlink:to="loc_us-gaap_DepreciationAmortizationAndAccretionNet_ff0aedcb-1cca-4b6d-a2ea-f409f9a640c8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostsAndExpenses_e95ce842-4a26-4477-b164-9579a8be8765" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CostsAndExpenses"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CostOfRevenueAbstract_8c39c9ad-59bb-44b5-858a-9d961e1b88e5" xlink:to="loc_us-gaap_CostsAndExpenses_e95ce842-4a26-4477-b164-9579a8be8765" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_98da8d27-4368-44de-9551-32ed028ede06" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_b2e8e8cf-8d3b-48bf-81c6-491605b26ac7" xlink:to="loc_us-gaap_OperatingIncomeLoss_98da8d27-4368-44de-9551-32ed028ede06" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromEquityMethodInvestments_8d0545a0-376d-42d1-9a3c-9e0dcab1d87c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeLossFromEquityMethodInvestments"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_b2e8e8cf-8d3b-48bf-81c6-491605b26ac7" xlink:to="loc_us-gaap_IncomeLossFromEquityMethodInvestments_8d0545a0-376d-42d1-9a3c-9e0dcab1d87c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeconsolidationGainOrLossAmount_72016ef9-ef24-4ab5-9f0b-bfaf77dcb7aa" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DeconsolidationGainOrLossAmount"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_b2e8e8cf-8d3b-48bf-81c6-491605b26ac7" xlink:to="loc_us-gaap_DeconsolidationGainOrLossAmount_72016ef9-ef24-4ab5-9f0b-bfaf77dcb7aa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestExpenseDebt_d54c8646-03b2-4b35-9ac6-a8ff656849f0" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InterestExpenseDebt"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_b2e8e8cf-8d3b-48bf-81c6-491605b26ac7" xlink:to="loc_us-gaap_InterestExpenseDebt_d54c8646-03b2-4b35-9ac6-a8ff656849f0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestIncomeExpenseNonoperatingNet_8eb03fdd-34cd-47aa-a6c8-0c765b1e0e65" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InterestIncomeExpenseNonoperatingNet"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_b2e8e8cf-8d3b-48bf-81c6-491605b26ac7" xlink:to="loc_us-gaap_InterestIncomeExpenseNonoperatingNet_8eb03fdd-34cd-47aa-a6c8-0c765b1e0e65" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_4bfb591d-1556-4e7d-ae44-e2a36d6d835e" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_b2e8e8cf-8d3b-48bf-81c6-491605b26ac7" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_4bfb591d-1556-4e7d-ae44-e2a36d6d835e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_e2d0018b-9e46-46b4-874c-49100906ac48" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_b2e8e8cf-8d3b-48bf-81c6-491605b26ac7" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_e2d0018b-9e46-46b4-874c-49100906ac48" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperations_72523b45-65d5-4a53-acce-18c766d1c4ec" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeLossFromContinuingOperations"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_b2e8e8cf-8d3b-48bf-81c6-491605b26ac7" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperations_72523b45-65d5-4a53-acce-18c766d1c4ec" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity_22807fc0-c733-47ea-b5b6-f38ae5bbdd03" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_b2e8e8cf-8d3b-48bf-81c6-491605b26ac7" xlink:to="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity_22807fc0-c733-47ea-b5b6-f38ae5bbdd03" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_56e0767d-e441-447a-9fe4-23325dedf915" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetIncomeLoss"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_b2e8e8cf-8d3b-48bf-81c6-491605b26ac7" xlink:to="loc_us-gaap_NetIncomeLoss_56e0767d-e441-447a-9fe4-23325dedf915" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_b8630c99-09b2-4b81-ab60-b60cfc3dfa98" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract"/>
    <link:presentationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_b2e8e8cf-8d3b-48bf-81c6-491605b26ac7" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_b8630c99-09b2-4b81-ab60-b60cfc3dfa98" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CumulativeTranslationAdjustmentNetOfTaxPeriodIncreaseDecrease_f55c8bff-2857-4ba9-beff-66d5e27601e6" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CumulativeTranslationAdjustmentNetOfTaxPeriodIncreaseDecrease"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_b8630c99-09b2-4b81-ab60-b60cfc3dfa98" xlink:to="loc_us-gaap_CumulativeTranslationAdjustmentNetOfTaxPeriodIncreaseDecrease_f55c8bff-2857-4ba9-beff-66d5e27601e6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OciEquityMethodInvestmentAfterTax_13aa758c-707c-48a2-acc1-7096d1955eec" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OciEquityMethodInvestmentAfterTax"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_b8630c99-09b2-4b81-ab60-b60cfc3dfa98" xlink:to="loc_us-gaap_OciEquityMethodInvestmentAfterTax_13aa758c-707c-48a2-acc1-7096d1955eec" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_9ba9e55d-c41d-4158-8abd-97a4b9dfa076" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_b8630c99-09b2-4b81-ab60-b60cfc3dfa98" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_9ba9e55d-c41d-4158-8abd-97a4b9dfa076" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTax_294425ff-c26d-4cc6-bea6-8060ac044a98" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ComprehensiveIncomeNetOfTax"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_b8630c99-09b2-4b81-ab60-b60cfc3dfa98" xlink:to="loc_us-gaap_ComprehensiveIncomeNetOfTax_294425ff-c26d-4cc6-bea6-8060ac044a98" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareBasicAbstract_b0d80570-ea11-4f4a-9aec-5816e41dbc07" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EarningsPerShareBasicAbstract"/>
    <link:presentationArc order="16" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_b2e8e8cf-8d3b-48bf-81c6-491605b26ac7" xlink:to="loc_us-gaap_EarningsPerShareBasicAbstract_b0d80570-ea11-4f4a-9aec-5816e41dbc07" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsPerBasicShare_4d5b4d5d-d0d7-4fa8-aa17-80ee80bb2090" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeLossFromContinuingOperationsPerBasicShare"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareBasicAbstract_b0d80570-ea11-4f4a-9aec-5816e41dbc07" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsPerBasicShare_4d5b4d5d-d0d7-4fa8-aa17-80ee80bb2090" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare_5f231ab0-72bd-483d-8f22-1a806a7cea47" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareBasicAbstract_b0d80570-ea11-4f4a-9aec-5816e41dbc07" xlink:to="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare_5f231ab0-72bd-483d-8f22-1a806a7cea47" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare_0905bf46-8493-4904-aa2c-5fdd15a64963" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareBasicAbstract_b0d80570-ea11-4f4a-9aec-5816e41dbc07" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare_0905bf46-8493-4904-aa2c-5fdd15a64963" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare_df02292c-5d48-41fe-8acb-fb8f2762f9bf" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareBasicAbstract_b0d80570-ea11-4f4a-9aec-5816e41dbc07" xlink:to="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare_df02292c-5d48-41fe-8acb-fb8f2762f9bf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareBasic_d80eeae8-58e0-4391-a48b-2f43334e1bd1" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EarningsPerShareBasic"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareBasicAbstract_b0d80570-ea11-4f4a-9aec-5816e41dbc07" xlink:to="loc_us-gaap_EarningsPerShareBasic_d80eeae8-58e0-4391-a48b-2f43334e1bd1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareDiluted_806a52d3-6d68-432a-85df-cb67a26b18ec" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EarningsPerShareDiluted"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareBasicAbstract_b0d80570-ea11-4f4a-9aec-5816e41dbc07" xlink:to="loc_us-gaap_EarningsPerShareDiluted_806a52d3-6d68-432a-85df-cb67a26b18ec" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_fed9af5b-6fbb-4a9d-9dd3-1791d677a8a2" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract"/>
    <link:presentationArc order="17" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_b2e8e8cf-8d3b-48bf-81c6-491605b26ac7" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_fed9af5b-6fbb-4a9d-9dd3-1791d677a8a2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_e258481d-349f-42af-a7bc-1feebe042994" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_fed9af5b-6fbb-4a9d-9dd3-1791d677a8a2" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_e258481d-349f-42af-a7bc-1feebe042994" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_cbfaba3a-a95c-42ae-91a2-dccacb637565" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_fed9af5b-6fbb-4a9d-9dd3-1791d677a8a2" xlink:to="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_cbfaba3a-a95c-42ae-91a2-dccacb637565" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/CondensedConsolidatedInterimStatementsofShareholdersEquityunaudited" xlink:type="simple" xlink:href="wprt-20250630.xsd#CondensedConsolidatedInterimStatementsofShareholdersEquityunaudited"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/CondensedConsolidatedInterimStatementsofShareholdersEquityunaudited" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfStockholdersEquityAbstract_32815e91-4323-4595-8e76-ec10e6493be4" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StatementOfStockholdersEquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementTable_826fe883-749a-4d0a-9dee-060c3e6e2b70" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StatementTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfStockholdersEquityAbstract_32815e91-4323-4595-8e76-ec10e6493be4" xlink:to="loc_us-gaap_StatementTable_826fe883-749a-4d0a-9dee-060c3e6e2b70" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_79e6b313-8e6b-4bd6-bea7-0f2db04cfc1e" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_826fe883-749a-4d0a-9dee-060c3e6e2b70" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_79e6b313-8e6b-4bd6-bea7-0f2db04cfc1e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_2e6ee834-47e0-442b-8b27-03b10a2d88f6" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EquityComponentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_79e6b313-8e6b-4bd6-bea7-0f2db04cfc1e" xlink:to="loc_us-gaap_EquityComponentDomain_2e6ee834-47e0-442b-8b27-03b10a2d88f6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember_1443384f-b895-4a68-a3a9-8a32cf07c35d" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommonStockMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_2e6ee834-47e0-442b-8b27-03b10a2d88f6" xlink:to="loc_us-gaap_CommonStockMember_1443384f-b895-4a68-a3a9-8a32cf07c35d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_EquitySecuritiesOtherOneMember_769e61cf-584b-4a43-9ade-3107f98b1165" xlink:href="wprt-20250630.xsd#wprt_EquitySecuritiesOtherOneMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_2e6ee834-47e0-442b-8b27-03b10a2d88f6" xlink:to="loc_wprt_EquitySecuritiesOtherOneMember_769e61cf-584b-4a43-9ade-3107f98b1165" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalMember_ad06a832-d7e5-47ac-8e26-451f5ee5cef6" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AdditionalPaidInCapitalMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_2e6ee834-47e0-442b-8b27-03b10a2d88f6" xlink:to="loc_us-gaap_AdditionalPaidInCapitalMember_ad06a832-d7e5-47ac-8e26-451f5ee5cef6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsMember_e3139fd2-df19-4911-8320-d362756e1067" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RetainedEarningsMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_2e6ee834-47e0-442b-8b27-03b10a2d88f6" xlink:to="loc_us-gaap_RetainedEarningsMember_e3139fd2-df19-4911-8320-d362756e1067" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_f7f0108c-5d91-4e2b-b634-6988ece4295c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_2e6ee834-47e0-442b-8b27-03b10a2d88f6" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_f7f0108c-5d91-4e2b-b634-6988ece4295c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementLineItems_02ac9dab-5fdc-445c-ba7d-efeb166e0e09" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StatementLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_826fe883-749a-4d0a-9dee-060c3e6e2b70" xlink:to="loc_us-gaap_StatementLineItems_02ac9dab-5fdc-445c-ba7d-efeb166e0e09" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_85b4ba59-a124-4f53-a5f1-f90bfc822dfa" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInStockholdersEquityRollForward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_02ac9dab-5fdc-445c-ba7d-efeb166e0e09" xlink:to="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_85b4ba59-a124-4f53-a5f1-f90bfc822dfa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesOutstanding_0c932704-3092-4f6a-bf43-ad85cdfb5747" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommonStockSharesOutstanding"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_85b4ba59-a124-4f53-a5f1-f90bfc822dfa" xlink:to="loc_us-gaap_CommonStockSharesOutstanding_0c932704-3092-4f6a-bf43-ad85cdfb5747" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_adcea0b9-37d4-4941-88f9-ca48b5ea4174" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StockholdersEquity"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_85b4ba59-a124-4f53-a5f1-f90bfc822dfa" xlink:to="loc_us-gaap_StockholdersEquity_adcea0b9-37d4-4941-88f9-ca48b5ea4174" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_b98a0dfa-939d-4e7a-afba-266d210bb4ac" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_85b4ba59-a124-4f53-a5f1-f90bfc822dfa" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_b98a0dfa-939d-4e7a-afba-266d210bb4ac" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_6bbcd253-1c38-4a96-a6b7-2dda067b9081" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_85b4ba59-a124-4f53-a5f1-f90bfc822dfa" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_6bbcd253-1c38-4a96-a6b7-2dda067b9081" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_e9e5c781-1af0-4d81-9073-9cf09c333d28" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_85b4ba59-a124-4f53-a5f1-f90bfc822dfa" xlink:to="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_e9e5c781-1af0-4d81-9073-9cf09c333d28" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_57086307-7fd8-46cd-a481-15e093b7bdb1" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetIncomeLoss"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_85b4ba59-a124-4f53-a5f1-f90bfc822dfa" xlink:to="loc_us-gaap_NetIncomeLoss_57086307-7fd8-46cd-a481-15e093b7bdb1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_89604164-a17d-4127-8b90-67f28ee1e632" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_85b4ba59-a124-4f53-a5f1-f90bfc822dfa" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_89604164-a17d-4127-8b90-67f28ee1e632" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesOutstanding_e43652f4-7c35-44e1-8b9a-a06521a4adb5" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommonStockSharesOutstanding"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_85b4ba59-a124-4f53-a5f1-f90bfc822dfa" xlink:to="loc_us-gaap_CommonStockSharesOutstanding_e43652f4-7c35-44e1-8b9a-a06521a4adb5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_b4f9d594-cb68-4811-903a-eab58df99fab" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StockholdersEquity"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_85b4ba59-a124-4f53-a5f1-f90bfc822dfa" xlink:to="loc_us-gaap_StockholdersEquity_b4f9d594-cb68-4811-903a-eab58df99fab" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited" xlink:type="simple" xlink:href="wprt-20250630.xsd#CondensedConsolidatedInterimStatementsofCashFlowsunaudited"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfCashFlowsAbstract_85f6f81c-a1d1-4cff-ae84-5a82228a2325" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StatementOfCashFlowsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract_c09ea16a-5ba7-49a4-9a11-ec29bbe94580" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_85f6f81c-a1d1-4cff-ae84-5a82228a2325" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract_c09ea16a-5ba7-49a4-9a11-ec29bbe94580" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperations_bdc851a9-955e-488f-bef4-6aea9b89a744" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeLossFromContinuingOperations"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract_c09ea16a-5ba7-49a4-9a11-ec29bbe94580" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperations_bdc851a9-955e-488f-bef4-6aea9b89a744" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_100ce243-e204-4ff3-b7cf-6911b3d9c2f0" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract_c09ea16a-5ba7-49a4-9a11-ec29bbe94580" xlink:to="loc_us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_100ce243-e204-4ff3-b7cf-6911b3d9c2f0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DepreciationDepletionAndAmortization_dfd89b96-4792-4a26-ae90-dfa4a79355c7" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DepreciationDepletionAndAmortization"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_100ce243-e204-4ff3-b7cf-6911b3d9c2f0" xlink:to="loc_us-gaap_DepreciationDepletionAndAmortization_dfd89b96-4792-4a26-ae90-dfa4a79355c7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/netLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensation_04b21def-62b9-4124-953c-f73584d11b11" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensation"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_100ce243-e204-4ff3-b7cf-6911b3d9c2f0" xlink:to="loc_us-gaap_ShareBasedCompensation_04b21def-62b9-4124-953c-f73584d11b11" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_a591c234-2937-4005-b16f-da21c82b70c3" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ForeignCurrencyTransactionGainLossBeforeTax"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_100ce243-e204-4ff3-b7cf-6911b3d9c2f0" xlink:to="loc_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_a591c234-2937-4005-b16f-da21c82b70c3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_b9af5735-297f-41f4-bd36-75d166b6e2ee" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_100ce243-e204-4ff3-b7cf-6911b3d9c2f0" xlink:to="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_b9af5735-297f-41f4-bd36-75d166b6e2ee" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromEquityMethodInvestments_477507b2-8bc5-4afa-ad08-6050a9c37488" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeLossFromEquityMethodInvestments"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_100ce243-e204-4ff3-b7cf-6911b3d9c2f0" xlink:to="loc_us-gaap_IncomeLossFromEquityMethodInvestments_477507b2-8bc5-4afa-ad08-6050a9c37488" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestExpenseLongTermDebt_8b9919bd-2021-4fea-88f5-245ddba8e40c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InterestExpenseLongTermDebt"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_100ce243-e204-4ff3-b7cf-6911b3d9c2f0" xlink:to="loc_us-gaap_InterestExpenseLongTermDebt_8b9919bd-2021-4fea-88f5-245ddba8e40c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryWriteDown_1aa09cb3-7d90-489c-ab7c-24855cabc954" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InventoryWriteDown"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_100ce243-e204-4ff3-b7cf-6911b3d9c2f0" xlink:to="loc_us-gaap_InventoryWriteDown_1aa09cb3-7d90-489c-ab7c-24855cabc954" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeconsolidationGainOrLossAmount_b1188e81-88a6-4b34-8b57-b771aa842c25" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DeconsolidationGainOrLossAmount"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_100ce243-e204-4ff3-b7cf-6911b3d9c2f0" xlink:to="loc_us-gaap_DeconsolidationGainOrLossAmount_b1188e81-88a6-4b34-8b57-b771aa842c25" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOperatingCapital_4f654b4e-1a21-41b7-b1f5-0c48c61cb8b4" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInOperatingCapital"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_100ce243-e204-4ff3-b7cf-6911b3d9c2f0" xlink:to="loc_us-gaap_IncreaseDecreaseInOperatingCapital_4f654b4e-1a21-41b7-b1f5-0c48c61cb8b4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_ad31f408-0ff0-4e40-8b3b-ffae9da84ea8" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_100ce243-e204-4ff3-b7cf-6911b3d9c2f0" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_ad31f408-0ff0-4e40-8b3b-ffae9da84ea8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations_23321aae-5db2-4765-9d73-a5b1392a373f" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_100ce243-e204-4ff3-b7cf-6911b3d9c2f0" xlink:to="loc_us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations_23321aae-5db2-4765-9d73-a5b1392a373f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract_b76dc594-36ed-4aa5-aac3-c21a28036ce3" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_85f6f81c-a1d1-4cff-ae84-5a82228a2325" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract_b76dc594-36ed-4aa5-aac3-c21a28036ce3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_8da01536-8518-4e6f-96a5-64b1f8e4b2eb" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract_b76dc594-36ed-4aa5-aac3-c21a28036ce3" xlink:to="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_8da01536-8518-4e6f-96a5-64b1f8e4b2eb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments_964eb17a-8531-4ff7-8471-9141df87c68e" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract_b76dc594-36ed-4aa5-aac3-c21a28036ce3" xlink:to="loc_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments_964eb17a-8531-4ff7-8471-9141df87c68e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ProceedsFromCollectionOfHoldbackReceivable_d0567c09-9fd0-4726-a726-bd06860d3df9" xlink:href="wprt-20250630.xsd#wprt_ProceedsFromCollectionOfHoldbackReceivable"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract_b76dc594-36ed-4aa5-aac3-c21a28036ce3" xlink:to="loc_wprt_ProceedsFromCollectionOfHoldbackReceivable_d0567c09-9fd0-4726-a726-bd06860d3df9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireEquityMethodInvestments_ed004d19-f2c1-4f10-b3bb-ab10ec7d9ca2" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PaymentsToAcquireEquityMethodInvestments"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract_b76dc594-36ed-4aa5-aac3-c21a28036ce3" xlink:to="loc_us-gaap_PaymentsToAcquireEquityMethodInvestments_ed004d19-f2c1-4f10-b3bb-ab10ec7d9ca2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations_a90d8aa5-2c63-4043-a03c-0dd1f08bc240" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract_b76dc594-36ed-4aa5-aac3-c21a28036ce3" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations_a90d8aa5-2c63-4043-a03c-0dd1f08bc240" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations_adb90bb2-700e-4ef6-aa6b-0a12bed477b7" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract_b76dc594-36ed-4aa5-aac3-c21a28036ce3" xlink:to="loc_us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations_adb90bb2-700e-4ef6-aa6b-0a12bed477b7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract_5da0c708-439d-4d18-91d4-62009b775da6" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_85f6f81c-a1d1-4cff-ae84-5a82228a2325" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract_5da0c708-439d-4d18-91d4-62009b775da6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RepaymentsOfLongTermLinesOfCredit_9eb4a311-6e89-4adb-9458-91bac56d3c6c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RepaymentsOfLongTermLinesOfCredit"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract_5da0c708-439d-4d18-91d4-62009b775da6" xlink:to="loc_us-gaap_RepaymentsOfLongTermLinesOfCredit_9eb4a311-6e89-4adb-9458-91bac56d3c6c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromLinesOfCredit_19858364-4889-4b32-b0fb-5998360eec95" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ProceedsFromLinesOfCredit"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract_5da0c708-439d-4d18-91d4-62009b775da6" xlink:to="loc_us-gaap_ProceedsFromLinesOfCredit_19858364-4889-4b32-b0fb-5998360eec95" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations_f63b28c3-93b0-4884-b1e2-690cb8e144f7" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract_5da0c708-439d-4d18-91d4-62009b775da6" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations_f63b28c3-93b0-4884-b1e2-690cb8e144f7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashProvidedByUsedInFinancingActivitiesDiscontinuedOperations_7108a0e4-9385-4167-b5a7-7eb814d78c71" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CashProvidedByUsedInFinancingActivitiesDiscontinuedOperations"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract_5da0c708-439d-4d18-91d4-62009b775da6" xlink:to="loc_us-gaap_CashProvidedByUsedInFinancingActivitiesDiscontinuedOperations_7108a0e4-9385-4167-b5a7-7eb814d78c71" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_38fae3da-4a2c-425e-9e7a-bdaaa51fce72" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_85f6f81c-a1d1-4cff-ae84-5a82228a2325" xlink:to="loc_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_38fae3da-4a2c-425e-9e7a-bdaaa51fce72" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_d8f20638-ed5b-4aec-9751-e3ddf17d1a0a" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_85f6f81c-a1d1-4cff-ae84-5a82228a2325" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_d8f20638-ed5b-4aec-9751-e3ddf17d1a0a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_a505b554-e00c-4d53-9240-5e3d5392f4d6" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_85f6f81c-a1d1-4cff-ae84-5a82228a2325" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_a505b554-e00c-4d53-9240-5e3d5392f4d6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_22e521ad-0b33-4011-a104-4d1ea74b1b51" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_85f6f81c-a1d1-4cff-ae84-5a82228a2325" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_22e521ad-0b33-4011-a104-4d1ea74b1b51" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsDisposalGroupIncludingDiscontinuedOperations_9d46d010-ccfc-4cbf-89c7-8d0ae1415189" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsDisposalGroupIncludingDiscontinuedOperations"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_85f6f81c-a1d1-4cff-ae84-5a82228a2325" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsDisposalGroupIncludingDiscontinuedOperations_9d46d010-ccfc-4cbf-89c7-8d0ae1415189" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_119f2837-7081-4cf8-9e98-2692c69c86ee" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_85f6f81c-a1d1-4cff-ae84-5a82228a2325" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_119f2837-7081-4cf8-9e98-2692c69c86ee" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/netLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SupplementalCashFlowInformationAbstract_7bd19168-f7ef-4749-9b87-1f3463f0036e" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SupplementalCashFlowInformationAbstract"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_85f6f81c-a1d1-4cff-ae84-5a82228a2325" xlink:to="loc_us-gaap_SupplementalCashFlowInformationAbstract_7bd19168-f7ef-4749-9b87-1f3463f0036e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestPaidNet_3e45df1c-65fb-4bbd-b80b-5a3384f1cd87" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InterestPaidNet"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SupplementalCashFlowInformationAbstract_7bd19168-f7ef-4749-9b87-1f3463f0036e" xlink:to="loc_us-gaap_InterestPaidNet_3e45df1c-65fb-4bbd-b80b-5a3384f1cd87" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxesPaidNet_d3031840-52e9-4dcc-b198-44ecb800ab66" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeTaxesPaidNet"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SupplementalCashFlowInformationAbstract_7bd19168-f7ef-4749-9b87-1f3463f0036e" xlink:to="loc_us-gaap_IncomeTaxesPaidNet_d3031840-52e9-4dcc-b198-44ecb800ab66" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_3ac73c57-b82b-4b6d-9b4e-1b4b050febb7" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SupplementalCashFlowInformationAbstract_7bd19168-f7ef-4749-9b87-1f3463f0036e" xlink:to="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_3ac73c57-b82b-4b6d-9b4e-1b4b050febb7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_6a0bf100-28f6-4d14-a1f9-95717dd2549a" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_3ac73c57-b82b-4b6d-9b4e-1b4b050febb7" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_6a0bf100-28f6-4d14-a1f9-95717dd2549a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInInventories_350e2bc1-3475-4859-82ee-281306bc0d05" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInInventories"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_3ac73c57-b82b-4b6d-9b4e-1b4b050febb7" xlink:to="loc_us-gaap_IncreaseDecreaseInInventories_350e2bc1-3475-4859-82ee-281306bc0d05" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInPrepaidExpense_0af96fe6-32db-4822-9adf-e4e8d908ecca" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInPrepaidExpense"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_3ac73c57-b82b-4b6d-9b4e-1b4b050febb7" xlink:to="loc_us-gaap_IncreaseDecreaseInPrepaidExpense_0af96fe6-32db-4822-9adf-e4e8d908ecca" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities_dba3fa7a-39eb-4706-9ee6-78ce7a1b86e6" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_3ac73c57-b82b-4b6d-9b4e-1b4b050febb7" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities_dba3fa7a-39eb-4706-9ee6-78ce7a1b86e6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_IncreaseDecreaseInWarrantyLiability_27c9f34f-bd7c-46f0-b552-d81726f2f221" xlink:href="wprt-20250630.xsd#wprt_IncreaseDecreaseInWarrantyLiability"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_3ac73c57-b82b-4b6d-9b4e-1b4b050febb7" xlink:to="loc_wprt_IncreaseDecreaseInWarrantyLiability_27c9f34f-bd7c-46f0-b552-d81726f2f221" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOperatingCapital_ce474e05-bee2-4461-bfce-3479579b6037" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncreaseDecreaseInOperatingCapital"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_3ac73c57-b82b-4b6d-9b4e-1b4b050febb7" xlink:to="loc_us-gaap_IncreaseDecreaseInOperatingCapital_ce474e05-bee2-4461-bfce-3479579b6037" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTotalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/Companyorganizationandoperations" xlink:type="simple" xlink:href="wprt-20250630.xsd#Companyorganizationandoperations"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/Companyorganizationandoperations" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_cac1a9f2-cac6-43ef-b65f-37b9393a29bd" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NatureOfOperations_558f07a5-4778-40e3-8301-abc90e3da3c3" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NatureOfOperations"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_cac1a9f2-cac6-43ef-b65f-37b9393a29bd" xlink:to="loc_us-gaap_NatureOfOperations_558f07a5-4778-40e3-8301-abc90e3da3c3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/LiquidityandGoingConcern" xlink:type="simple" xlink:href="wprt-20250630.xsd#LiquidityandGoingConcern"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/LiquidityandGoingConcern" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_e99ed5e9-6481-4ab3-89ef-d9faf78a0194" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubstantialDoubtAboutGoingConcernTextBlock_9721ea74-cca8-48f6-bf34-157ce29a17e6" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SubstantialDoubtAboutGoingConcernTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_e99ed5e9-6481-4ab3-89ef-d9faf78a0194" xlink:to="loc_us-gaap_SubstantialDoubtAboutGoingConcernTextBlock_9721ea74-cca8-48f6-bf34-157ce29a17e6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/Basisofpreparation" xlink:type="simple" xlink:href="wprt-20250630.xsd#Basisofpreparation"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/Basisofpreparation" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_09351605-9882-4cea-86da-0ae14231f967" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BasisOfAccounting_13d3f5c6-3965-492b-ac7c-a4bea73d7feb" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_BasisOfAccounting"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_09351605-9882-4cea-86da-0ae14231f967" xlink:to="loc_us-gaap_BasisOfAccounting_13d3f5c6-3965-492b-ac7c-a4bea73d7feb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/Newaccountingpronouncements" xlink:type="simple" xlink:href="wprt-20250630.xsd#Newaccountingpronouncements"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/Newaccountingpronouncements" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_d38da2c8-b463-4e04-a260-fed801512602" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_b4917998-c8c9-44bd-9174-5090348578b0" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_d38da2c8-b463-4e04-a260-fed801512602" xlink:to="loc_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_b4917998-c8c9-44bd-9174-5090348578b0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/Heldforsaledisposalgroupanddiscontinuedoperations" xlink:type="simple" xlink:href="wprt-20250630.xsd#Heldforsaledisposalgroupanddiscontinuedoperations"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/Heldforsaledisposalgroupanddiscontinuedoperations" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract_0ec4934d-7281-4775-8cb3-f62fc97265e3" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock_7e68df74-8809-4cbd-a31d-63d3ee903e7a" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract_0ec4934d-7281-4775-8cb3-f62fc97265e3" xlink:to="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock_7e68df74-8809-4cbd-a31d-63d3ee903e7a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/Accountsreceivable" xlink:type="simple" xlink:href="wprt-20250630.xsd#Accountsreceivable"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/Accountsreceivable" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReceivablesAbstract_81d6e8bd-1e22-4001-a940-64f067616e67" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ReceivablesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock_2f628310-5370-41e9-b972-abfaca48d0cf" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ReceivablesAbstract_81d6e8bd-1e22-4001-a940-64f067616e67" xlink:to="loc_us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock_2f628310-5370-41e9-b972-abfaca48d0cf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/Inventories" xlink:type="simple" xlink:href="wprt-20250630.xsd#Inventories"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/Inventories" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryDisclosureAbstract_049437ca-28d2-483c-bbc6-b96d87e59a34" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InventoryDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryDisclosureTextBlock_890f2ee2-8b46-44f6-a3b8-b3271b0f5355" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InventoryDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_049437ca-28d2-483c-bbc6-b96d87e59a34" xlink:to="loc_us-gaap_InventoryDisclosureTextBlock_890f2ee2-8b46-44f6-a3b8-b3271b0f5355" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/Longterminvestments" xlink:type="simple" xlink:href="wprt-20250630.xsd#Longterminvestments"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/Longterminvestments" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract_11c70daa-8981-4ca6-b4f9-e405123060fc" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityMethodInvestmentsDisclosureTextBlock_64710833-4259-4225-a610-d4aa63ae4798" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EquityMethodInvestmentsDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract_11c70daa-8981-4ca6-b4f9-e405123060fc" xlink:to="loc_us-gaap_EquityMethodInvestmentsDisclosureTextBlock_64710833-4259-4225-a610-d4aa63ae4798" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/Propertyplantandequipment" xlink:type="simple" xlink:href="wprt-20250630.xsd#Propertyplantandequipment"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/Propertyplantandequipment" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAbstract_ee8be7b1-0855-4540-a147-81d5e2454380" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PropertyPlantAndEquipmentAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_7bab5d42-c875-4e03-9524-95b7570a7b90" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_ee8be7b1-0855-4540-a147-81d5e2454380" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_7bab5d42-c875-4e03-9524-95b7570a7b90" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/Accountspayableandaccruedliabilities" xlink:type="simple" xlink:href="wprt-20250630.xsd#Accountspayableandaccruedliabilities"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/Accountspayableandaccruedliabilities" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PayablesAndAccrualsAbstract_1f3cbedd-60fb-40b7-b6a0-c41a5dc5617a" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PayablesAndAccrualsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock_0f743047-6b4f-4054-8f8b-35b60ffc9051" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PayablesAndAccrualsAbstract_1f3cbedd-60fb-40b7-b6a0-c41a5dc5617a" xlink:to="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock_0f743047-6b4f-4054-8f8b-35b60ffc9051" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/Operatingleasesrightofuseassetsandleaseliabilities" xlink:type="simple" xlink:href="wprt-20250630.xsd#Operatingleasesrightofuseassetsandleaseliabilities"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/Operatingleasesrightofuseassetsandleaseliabilities" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_fb58dc15-f7be-4dc6-b86f-c999df77ca36" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeasesTextBlock_137589a7-7ef1-4964-a36d-ac7f65d4f5b2" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LesseeOperatingLeasesTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_fb58dc15-f7be-4dc6-b86f-c999df77ca36" xlink:to="loc_us-gaap_LesseeOperatingLeasesTextBlock_137589a7-7ef1-4964-a36d-ac7f65d4f5b2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/Longtermdebt" xlink:type="simple" xlink:href="wprt-20250630.xsd#Longtermdebt"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/Longtermdebt" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureAbstract_c84469c9-c978-4166-a971-0de5a3fa9cd4" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtTextBlock_754a33b1-eecc-45dd-b07c-ccf7bc9466cb" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LongTermDebtTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_c84469c9-c978-4166-a971-0de5a3fa9cd4" xlink:to="loc_us-gaap_LongTermDebtTextBlock_754a33b1-eecc-45dd-b07c-ccf7bc9466cb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/Sharecapitalstockoptionsandotherstockbasedplans" xlink:type="simple" xlink:href="wprt-20250630.xsd#Sharecapitalstockoptionsandotherstockbasedplans"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/Sharecapitalstockoptionsandotherstockbasedplans" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_4b17bc57-d010-4169-b332-dc1eb3281e90" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_83aa052e-282f-4822-9120-05ae3ba8d652" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_4b17bc57-d010-4169-b332-dc1eb3281e90" xlink:to="loc_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_83aa052e-282f-4822-9120-05ae3ba8d652" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/Relatedpartytransactions" xlink:type="simple" xlink:href="wprt-20250630.xsd#Relatedpartytransactions"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/Relatedpartytransactions" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionsAbstract_cdd8a5a2-4c9f-4191-92a1-4a71c01c910c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RelatedPartyTransactionsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionsDisclosureTextBlock_9e2243ea-38bf-4092-9749-c91d1e2c6499" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RelatedPartyTransactionsDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyTransactionsAbstract_cdd8a5a2-4c9f-4191-92a1-4a71c01c910c" xlink:to="loc_us-gaap_RelatedPartyTransactionsDisclosureTextBlock_9e2243ea-38bf-4092-9749-c91d1e2c6499" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/Commitmentsandcontingencies" xlink:type="simple" xlink:href="wprt-20250630.xsd#Commitmentsandcontingencies"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/Commitmentsandcontingencies" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_105b5f87-8142-4bc5-a06c-576df48dce5a" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_46466ba9-3f59-4272-abcc-add05f327588" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_105b5f87-8142-4bc5-a06c-576df48dce5a" xlink:to="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_46466ba9-3f59-4272-abcc-add05f327588" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/Segmentinformation" xlink:type="simple" xlink:href="wprt-20250630.xsd#Segmentinformation"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/Segmentinformation" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingAbstract_e3a80fe7-ea55-4d05-85bf-541e83f0b338" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SegmentReportingAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingDisclosureTextBlock_1898bab6-17e1-42a2-a1bb-4207f9fbb597" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SegmentReportingDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_e3a80fe7-ea55-4d05-85bf-541e83f0b338" xlink:to="loc_us-gaap_SegmentReportingDisclosureTextBlock_1898bab6-17e1-42a2-a1bb-4207f9fbb597" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/Financialinstruments" xlink:type="simple" xlink:href="wprt-20250630.xsd#Financialinstruments"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/Financialinstruments" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_wprt_FinancialInstrumentsDisclosureAbstract_13d9f1d0-697e-46e9-a028-fdd25376dbb1" xlink:href="wprt-20250630.xsd#wprt_FinancialInstrumentsDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinancialInstrumentsDisclosureTextBlock_60188279-7081-40f1-8462-78acaea017e9" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_FinancialInstrumentsDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_wprt_FinancialInstrumentsDisclosureAbstract_13d9f1d0-697e-46e9-a028-fdd25376dbb1" xlink:to="loc_us-gaap_FinancialInstrumentsDisclosureTextBlock_60188279-7081-40f1-8462-78acaea017e9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/BasisofpreparationPolicies" xlink:type="simple" xlink:href="wprt-20250630.xsd#BasisofpreparationPolicies"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/BasisofpreparationPolicies" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_26d564eb-193b-45cb-a4e3-511734f84e46" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BasisOfAccountingPolicyPolicyTextBlock_e2311be1-bc82-4f80-a7f2-ce2d93bec129" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_BasisOfAccountingPolicyPolicyTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_26d564eb-193b-45cb-a4e3-511734f84e46" xlink:to="loc_us-gaap_BasisOfAccountingPolicyPolicyTextBlock_e2311be1-bc82-4f80-a7f2-ce2d93bec129" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock_ba249e25-bf51-4ff7-98eb-d717594c035a" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_26d564eb-193b-45cb-a4e3-511734f84e46" xlink:to="loc_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock_ba249e25-bf51-4ff7-98eb-d717594c035a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_HeldForSaleDisposalGroupAndDiscontinuedOperationsPolicyPolicyTextBlock_60a94b71-701f-4a27-9657-8e638a924c98" xlink:href="wprt-20250630.xsd#wprt_HeldForSaleDisposalGroupAndDiscontinuedOperationsPolicyPolicyTextBlock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_26d564eb-193b-45cb-a4e3-511734f84e46" xlink:to="loc_wprt_HeldForSaleDisposalGroupAndDiscontinuedOperationsPolicyPolicyTextBlock_60a94b71-701f-4a27-9657-8e638a924c98" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_e830ed8e-a6b0-4099-b223-f91e721f3616" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_26d564eb-193b-45cb-a4e3-511734f84e46" xlink:to="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_e830ed8e-a6b0-4099-b223-f91e721f3616" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/BasisofpreparationTables" xlink:type="simple" xlink:href="wprt-20250630.xsd#BasisofpreparationTables"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/BasisofpreparationTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_05487827-4c10-49ca-8f98-493d8b25834b" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ScheduleOfForeignCurrencyExchangeRateTranslationTableTextBlock_01c69338-f734-4a42-ab35-f99655d60348" xlink:href="wprt-20250630.xsd#wprt_ScheduleOfForeignCurrencyExchangeRateTranslationTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_05487827-4c10-49ca-8f98-493d8b25834b" xlink:to="loc_wprt_ScheduleOfForeignCurrencyExchangeRateTranslationTableTextBlock_01c69338-f734-4a42-ab35-f99655d60348" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsTables" xlink:type="simple" xlink:href="wprt-20250630.xsd#HeldforsaledisposalgroupanddiscontinuedoperationsTables"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract_0717d2f3-67f7-4b93-a4df-145970cbc2ab" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock_d85b7cfc-6885-42d7-b2e4-23ebba72b281" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract_0717d2f3-67f7-4b93-a4df-145970cbc2ab" xlink:to="loc_us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock_d85b7cfc-6885-42d7-b2e4-23ebba72b281" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/AccountsreceivableTables" xlink:type="simple" xlink:href="wprt-20250630.xsd#AccountsreceivableTables"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/AccountsreceivableTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReceivablesAbstract_23b9b1d6-065c-4c28-9925-99e242855703" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ReceivablesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock_bed24d65-17ca-4385-a3fe-edefa527c385" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ReceivablesAbstract_23b9b1d6-065c-4c28-9925-99e242855703" xlink:to="loc_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock_bed24d65-17ca-4385-a3fe-edefa527c385" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/InventoriesTables" xlink:type="simple" xlink:href="wprt-20250630.xsd#InventoriesTables"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/InventoriesTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryDisclosureAbstract_6197f1c2-296a-463d-901f-cfd50c9cff6d" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InventoryDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_92c17c3f-20e0-415b-8cee-82e14dca3ef1" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_6197f1c2-296a-463d-901f-cfd50c9cff6d" xlink:to="loc_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_92c17c3f-20e0-415b-8cee-82e14dca3ef1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/LongterminvestmentsTables" xlink:type="simple" xlink:href="wprt-20250630.xsd#LongterminvestmentsTables"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/LongterminvestmentsTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract_27117e81-2e7c-4beb-adf4-78dd4dea4c36" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityMethodInvestmentsTextBlock_5bf4f561-7d13-4776-8275-a7c8ef1075fd" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EquityMethodInvestmentsTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract_27117e81-2e7c-4beb-adf4-78dd4dea4c36" xlink:to="loc_us-gaap_EquityMethodInvestmentsTextBlock_5bf4f561-7d13-4776-8275-a7c8ef1075fd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/PropertyplantandequipmentTables" xlink:type="simple" xlink:href="wprt-20250630.xsd#PropertyplantandequipmentTables"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/PropertyplantandequipmentTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAbstract_e50f5cb6-a06f-433c-9d70-65ddbbcda306" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PropertyPlantAndEquipmentAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTextBlock_53e43e58-09d2-47ae-a03d-15e4c2601486" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PropertyPlantAndEquipmentTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_e50f5cb6-a06f-433c-9d70-65ddbbcda306" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTextBlock_53e43e58-09d2-47ae-a03d-15e4c2601486" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/AccountspayableandaccruedliabilitiesTables" xlink:type="simple" xlink:href="wprt-20250630.xsd#AccountspayableandaccruedliabilitiesTables"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/AccountspayableandaccruedliabilitiesTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PayablesAndAccrualsAbstract_edeec77c-457f-496f-b427-fba728292a23" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PayablesAndAccrualsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock_e3cfbea5-016b-4174-a85f-5a724a93b503" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PayablesAndAccrualsAbstract_edeec77c-457f-496f-b427-fba728292a23" xlink:to="loc_us-gaap_ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock_e3cfbea5-016b-4174-a85f-5a724a93b503" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesTables" xlink:type="simple" xlink:href="wprt-20250630.xsd#OperatingleasesrightofuseassetsandleaseliabilitiesTables"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_e90b4211-52ad-4e75-aa03-2322c003a88d" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseCostTableTextBlock_66e3e0aa-615c-4622-a660-98ac1ff8e56b" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LeaseCostTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_e90b4211-52ad-4e75-aa03-2322c003a88d" xlink:to="loc_us-gaap_LeaseCostTableTextBlock_66e3e0aa-615c-4622-a660-98ac1ff8e56b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_304b8011-ba7e-4d35-99df-d4e4c85129d4" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_e90b4211-52ad-4e75-aa03-2322c003a88d" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_304b8011-ba7e-4d35-99df-d4e4c85129d4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/LongtermdebtTables" xlink:type="simple" xlink:href="wprt-20250630.xsd#LongtermdebtTables"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/LongtermdebtTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureAbstract_ba9b937d-e1fb-473a-b003-94e30e235a28" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDebtInstrumentsTextBlock_7f09b906-cda4-4095-be4d-5d2a09fbb5bd" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfDebtInstrumentsTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_ba9b937d-e1fb-473a-b003-94e30e235a28" xlink:to="loc_us-gaap_ScheduleOfDebtInstrumentsTextBlock_7f09b906-cda4-4095-be4d-5d2a09fbb5bd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock_e157d7b1-a93f-4bda-be67-7f3202457402" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_ba9b937d-e1fb-473a-b003-94e30e235a28" xlink:to="loc_us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock_e157d7b1-a93f-4bda-be67-7f3202457402" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansTables" xlink:type="simple" xlink:href="wprt-20250630.xsd#SharecapitalstockoptionsandotherstockbasedplansTables"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_379e8523-9080-4a38-b387-d03b9c265f19" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_8f0fdb80-5024-489f-af25-f738c393abb4" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_379e8523-9080-4a38-b387-d03b9c265f19" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_8f0fdb80-5024-489f-af25-f738c393abb4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardIntrinsicValueTableTextBlock_b5d7ea74-9de2-4460-b00d-4d0255aedf84" xlink:href="wprt-20250630.xsd#wprt_ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardIntrinsicValueTableTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_379e8523-9080-4a38-b387-d03b9c265f19" xlink:to="loc_wprt_ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardIntrinsicValueTableTextBlock_b5d7ea74-9de2-4460-b00d-4d0255aedf84" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_b374c8ad-cd23-4753-8077-c24769a6875b" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_379e8523-9080-4a38-b387-d03b9c265f19" xlink:to="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_b374c8ad-cd23-4753-8077-c24769a6875b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/RelatedpartytransactionsTables" xlink:type="simple" xlink:href="wprt-20250630.xsd#RelatedpartytransactionsTables"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/RelatedpartytransactionsTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionsAbstract_31d8be06-2a39-42d7-ba6a-577789359a13" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RelatedPartyTransactionsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRelatedPartyTransactionsTableTextBlock_c81eca49-86ae-4f94-a94a-cfb010c9a44d" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfRelatedPartyTransactionsTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyTransactionsAbstract_31d8be06-2a39-42d7-ba6a-577789359a13" xlink:to="loc_us-gaap_ScheduleOfRelatedPartyTransactionsTableTextBlock_c81eca49-86ae-4f94-a94a-cfb010c9a44d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/SegmentinformationTables" xlink:type="simple" xlink:href="wprt-20250630.xsd#SegmentinformationTables"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/SegmentinformationTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingAbstract_1b8a768c-2ab9-4ab0-b49b-baf9ea3143a9" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SegmentReportingAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock_3846909d-48e7-4c01-a2ea-77081f645852" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_1b8a768c-2ab9-4ab0-b49b-baf9ea3143a9" xlink:to="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock_3846909d-48e7-4c01-a2ea-77081f645852" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ScheduleOfGeographicalRevenueInformationTableTextBlock_833d0cac-31e9-45ae-ab9c-72b135fef2b3" xlink:href="wprt-20250630.xsd#wprt_ScheduleOfGeographicalRevenueInformationTableTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_1b8a768c-2ab9-4ab0-b49b-baf9ea3143a9" xlink:to="loc_wprt_ScheduleOfGeographicalRevenueInformationTableTextBlock_833d0cac-31e9-45ae-ab9c-72b135fef2b3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ScheduleOfAllocationOfTotalAssetsTableTextBlock_5499fed6-b664-4530-823a-864a1c3f5164" xlink:href="wprt-20250630.xsd#wprt_ScheduleOfAllocationOfTotalAssetsTableTextBlock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_1b8a768c-2ab9-4ab0-b49b-baf9ea3143a9" xlink:to="loc_wprt_ScheduleOfAllocationOfTotalAssetsTableTextBlock_5499fed6-b664-4530-823a-864a1c3f5164" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/FinancialinstrumentsTables" xlink:type="simple" xlink:href="wprt-20250630.xsd#FinancialinstrumentsTables"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/FinancialinstrumentsTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_wprt_FinancialInstrumentsDisclosureAbstract_f0251dcd-d3d0-4ffa-b367-576de6c39e65" xlink:href="wprt-20250630.xsd#wprt_FinancialInstrumentsDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ContractualObligationFiscalYearMaturityScheduleTableTextBlock_0847f877-e978-4b99-b585-492a2723d490" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ContractualObligationFiscalYearMaturityScheduleTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_wprt_FinancialInstrumentsDisclosureAbstract_f0251dcd-d3d0-4ffa-b367-576de6c39e65" xlink:to="loc_srt_ContractualObligationFiscalYearMaturityScheduleTableTextBlock_0847f877-e978-4b99-b585-492a2723d490" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/CompanyorganizationandoperationsDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#CompanyorganizationandoperationsDetails"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/CompanyorganizationandoperationsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_5c3668ad-d18e-4a62-bc02-b166e26551de" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEquityMethodInvestmentsTable_5a794757-fdf9-464a-a058-bc051bcd46d5" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfEquityMethodInvestmentsTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_5c3668ad-d18e-4a62-bc02-b166e26551de" xlink:to="loc_us-gaap_ScheduleOfEquityMethodInvestmentsTable_5a794757-fdf9-464a-a058-bc051bcd46d5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_01ad437a-8ddb-40c6-a6a3-9377173c158f" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfEquityMethodInvestmentsTable_5a794757-fdf9-464a-a058-bc051bcd46d5" xlink:to="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_01ad437a-8ddb-40c6-a6a3-9377173c158f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_EquityMethodInvesteeNameDomain_ce8b70c8-11a1-4fa0-a12c-33196f18a01b" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_EquityMethodInvesteeNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_01ad437a-8ddb-40c6-a6a3-9377173c158f" xlink:to="loc_srt_EquityMethodInvesteeNameDomain_ce8b70c8-11a1-4fa0-a12c-33196f18a01b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_CespiraJointVentureMember_deada4fb-7f8e-4fb0-bfb2-8b0ece53e947" xlink:href="wprt-20250630.xsd#wprt_CespiraJointVentureMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_EquityMethodInvesteeNameDomain_ce8b70c8-11a1-4fa0-a12c-33196f18a01b" xlink:to="loc_wprt_CespiraJointVentureMember_deada4fb-7f8e-4fb0-bfb2-8b0ece53e947" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEquityMethodInvestmentsLineItems_909433b0-7ccb-4f25-8204-79becc4c66e6" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfEquityMethodInvestmentsLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfEquityMethodInvestmentsTable_5a794757-fdf9-464a-a058-bc051bcd46d5" xlink:to="loc_us-gaap_ScheduleOfEquityMethodInvestmentsLineItems_909433b0-7ccb-4f25-8204-79becc4c66e6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityMethodInvestmentOwnershipPercentage_22dd86ca-637f-4a60-90a2-2935cb9bf3c8" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EquityMethodInvestmentOwnershipPercentage"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfEquityMethodInvestmentsLineItems_909433b0-7ccb-4f25-8204-79becc4c66e6" xlink:to="loc_us-gaap_EquityMethodInvestmentOwnershipPercentage_22dd86ca-637f-4a60-90a2-2935cb9bf3c8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/LiquidityandGoingConcernDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#LiquidityandGoingConcernDetails"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/LiquidityandGoingConcernDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_671a5815-0d6f-4ddf-8d18-22503788a0b5" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTable_e7183b32-b755-458c-a240-285aeac14de4" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtInstrumentTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_671a5815-0d6f-4ddf-8d18-22503788a0b5" xlink:to="loc_us-gaap_DebtInstrumentTable_e7183b32-b755-458c-a240-285aeac14de4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeAxis_a9fc394c-58fa-4e06-affc-b4ba16910e06" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SubsequentEventTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_e7183b32-b755-458c-a240-285aeac14de4" xlink:to="loc_us-gaap_SubsequentEventTypeAxis_a9fc394c-58fa-4e06-affc-b4ba16910e06" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_4277cf08-ff2f-4d1b-b960-7a6c404ff3f9" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_a9fc394c-58fa-4e06-affc-b4ba16910e06" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_4277cf08-ff2f-4d1b-b960-7a6c404ff3f9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventMember_f7725084-3913-4489-943f-72a156d1eeba" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SubsequentEventMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTypeDomain_4277cf08-ff2f-4d1b-b960-7a6c404ff3f9" xlink:to="loc_us-gaap_SubsequentEventMember_f7725084-3913-4489-943f-72a156d1eeba" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationAxis_dbfd89ce-35d7-45ad-b204-efc1fb317c9b" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupClassificationAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_e7183b32-b755-458c-a240-285aeac14de4" xlink:to="loc_us-gaap_DisposalGroupClassificationAxis_dbfd89ce-35d7-45ad-b204-efc1fb317c9b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationDomain_9a549db5-9e9a-4a8b-8c20-d5967c4a86cb" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupClassificationDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisposalGroupClassificationAxis_dbfd89ce-35d7-45ad-b204-efc1fb317c9b" xlink:to="loc_us-gaap_DisposalGroupClassificationDomain_9a549db5-9e9a-4a8b-8c20-d5967c4a86cb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationsHeldforsaleMember_f8af58dd-8eac-4109-8e3e-352edf2ab08f" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DiscontinuedOperationsHeldforsaleMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisposalGroupClassificationDomain_9a549db5-9e9a-4a8b-8c20-d5967c4a86cb" xlink:to="loc_us-gaap_DiscontinuedOperationsHeldforsaleMember_f8af58dd-8eac-4109-8e3e-352edf2ab08f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationsDisposedOfBySaleMember_b355b873-50ad-4c1d-bdb1-1c913afa725e" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DiscontinuedOperationsDisposedOfBySaleMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisposalGroupClassificationDomain_9a549db5-9e9a-4a8b-8c20-d5967c4a86cb" xlink:to="loc_us-gaap_DiscontinuedOperationsDisposedOfBySaleMember_b355b873-50ad-4c1d-bdb1-1c913afa725e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_8ca2dd62-9df5-4591-be0c-f4e758dddcd8" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_e7183b32-b755-458c-a240-285aeac14de4" xlink:to="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_8ca2dd62-9df5-4591-be0c-f4e758dddcd8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_bf9bc674-f7ba-447d-965d-5740163404fe" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_8ca2dd62-9df5-4591-be0c-f4e758dddcd8" xlink:to="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_bf9bc674-f7ba-447d-965d-5740163404fe" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_LightDutyMember_cd3d11c3-909a-4276-ae34-9188127a8c57" xlink:href="wprt-20250630.xsd#wprt_LightDutyMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_bf9bc674-f7ba-447d-965d-5740163404fe" xlink:to="loc_wprt_LightDutyMember_cd3d11c3-909a-4276-ae34-9188127a8c57" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentLineItems_2bdfa701-3e65-4376-bd17-c768e8304623" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtInstrumentLineItems"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_e7183b32-b755-458c-a240-285aeac14de4" xlink:to="loc_us-gaap_DebtInstrumentLineItems_2bdfa701-3e65-4376-bd17-c768e8304623" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_6103fc48-0ee7-4f45-907a-8a0db056bf6d" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_2bdfa701-3e65-4376-bd17-c768e8304623" xlink:to="loc_us-gaap_OperatingIncomeLoss_6103fc48-0ee7-4f45-907a-8a0db056bf6d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_16a85c4d-1be0-4587-b6d8-caf3eb5719aa" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_2bdfa701-3e65-4376-bd17-c768e8304623" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_16a85c4d-1be0-4587-b6d8-caf3eb5719aa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents_8a69fa5d-988a-4498-9527-ff5a9164036f" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_2bdfa701-3e65-4376-bd17-c768e8304623" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents_8a69fa5d-988a-4498-9527-ff5a9164036f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtLongtermAndShorttermCombinedAmount_1599fd5a-0330-4935-b3a6-4a85edf6eac5" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtLongtermAndShorttermCombinedAmount"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_2bdfa701-3e65-4376-bd17-c768e8304623" xlink:to="loc_us-gaap_DebtLongtermAndShorttermCombinedAmount_1599fd5a-0330-4935-b3a6-4a85edf6eac5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent_b78edf10-b52d-47d9-ac6c-69dfb3576b9f" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_2bdfa701-3e65-4376-bd17-c768e8304623" xlink:to="loc_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent_b78edf10-b52d-47d9-ac6c-69dfb3576b9f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DebtInstrumentCovenantMinimumCashRequirement_e9f0aea7-75a2-417b-87a2-12d9726e3b71" xlink:href="wprt-20250630.xsd#wprt_DebtInstrumentCovenantMinimumCashRequirement"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_2bdfa701-3e65-4376-bd17-c768e8304623" xlink:to="loc_wprt_DebtInstrumentCovenantMinimumCashRequirement_e9f0aea7-75a2-417b-87a2-12d9726e3b71" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesTreasuryStockReissued_cab61c91-a547-4bcc-8a9f-a1380854f740" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StockIssuedDuringPeriodSharesTreasuryStockReissued"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_2bdfa701-3e65-4376-bd17-c768e8304623" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesTreasuryStockReissued_cab61c91-a547-4bcc-8a9f-a1380854f740" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration_653c8edd-dff0-4d78-b586-46c4cbcb69c5" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_2bdfa701-3e65-4376-bd17-c768e8304623" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration_653c8edd-dff0-4d78-b586-46c4cbcb69c5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/BasisofpreparationDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#BasisofpreparationDetails"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/BasisofpreparationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_13fd687e-451f-4bb0-8074-4ea57126f75a" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ScheduleOfForeignCurrencyTable_0b9b91bd-f33e-4cdd-b696-4d5c3e6c80ee" xlink:href="wprt-20250630.xsd#wprt_ScheduleOfForeignCurrencyTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_13fd687e-451f-4bb0-8074-4ea57126f75a" xlink:to="loc_wprt_ScheduleOfForeignCurrencyTable_0b9b91bd-f33e-4cdd-b696-4d5c3e6c80ee" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CurrencyAxis_60321c36-dde5-4985-a572-53ca8b313c36" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_CurrencyAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_wprt_ScheduleOfForeignCurrencyTable_0b9b91bd-f33e-4cdd-b696-4d5c3e6c80ee" xlink:to="loc_srt_CurrencyAxis_60321c36-dde5-4985-a572-53ca8b313c36" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_AllCurrenciesDomain_f6f6c51a-a610-4a2b-b512-d37e61096da7" xlink:href="https://xbrl.sec.gov/currency/2025/currency-2025.xsd#currency_AllCurrenciesDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_CurrencyAxis_60321c36-dde5-4985-a572-53ca8b313c36" xlink:to="loc_currency_AllCurrenciesDomain_f6f6c51a-a610-4a2b-b512-d37e61096da7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_CAD_46bf75b9-217d-422a-9194-72962c51f1f7" xlink:href="https://xbrl.sec.gov/currency/2025/currency-2025.xsd#currency_CAD"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_currency_AllCurrenciesDomain_f6f6c51a-a610-4a2b-b512-d37e61096da7" xlink:to="loc_currency_CAD_46bf75b9-217d-422a-9194-72962c51f1f7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_EUR_df5a3b64-7c08-414a-85c4-f64c8700e9a1" xlink:href="https://xbrl.sec.gov/currency/2025/currency-2025.xsd#currency_EUR"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_currency_AllCurrenciesDomain_f6f6c51a-a610-4a2b-b512-d37e61096da7" xlink:to="loc_currency_EUR_df5a3b64-7c08-414a-85c4-f64c8700e9a1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_CNY_bead16eb-ed53-4864-8e79-8053893b5659" xlink:href="https://xbrl.sec.gov/currency/2025/currency-2025.xsd#currency_CNY"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_currency_AllCurrenciesDomain_f6f6c51a-a610-4a2b-b512-d37e61096da7" xlink:to="loc_currency_CNY_bead16eb-ed53-4864-8e79-8053893b5659" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_PLN_4e2a766a-57a7-49c8-b367-8502d8dbe983" xlink:href="https://xbrl.sec.gov/currency/2025/currency-2025.xsd#currency_PLN"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_currency_AllCurrenciesDomain_f6f6c51a-a610-4a2b-b512-d37e61096da7" xlink:to="loc_currency_PLN_4e2a766a-57a7-49c8-b367-8502d8dbe983" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_SEK_7679a347-854c-412b-8c4e-ed1ad36a02c8" xlink:href="https://xbrl.sec.gov/currency/2025/currency-2025.xsd#currency_SEK"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_currency_AllCurrenciesDomain_f6f6c51a-a610-4a2b-b512-d37e61096da7" xlink:to="loc_currency_SEK_7679a347-854c-412b-8c4e-ed1ad36a02c8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_INR_f8fde980-ed8a-43ad-9690-c7e4c67f2b87" xlink:href="https://xbrl.sec.gov/currency/2025/currency-2025.xsd#currency_INR"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_currency_AllCurrenciesDomain_f6f6c51a-a610-4a2b-b512-d37e61096da7" xlink:to="loc_currency_INR_f8fde980-ed8a-43ad-9690-c7e4c67f2b87" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_ARS_398a2112-d879-4b41-84ff-4ee3d0060c1e" xlink:href="https://xbrl.sec.gov/currency/2025/currency-2025.xsd#currency_ARS"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_currency_AllCurrenciesDomain_f6f6c51a-a610-4a2b-b512-d37e61096da7" xlink:to="loc_currency_ARS_398a2112-d879-4b41-84ff-4ee3d0060c1e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ScheduleOfForeignCurrencyLineItems_a1dcbee3-7700-4246-b259-399ab7070f1b" xlink:href="wprt-20250630.xsd#wprt_ScheduleOfForeignCurrencyLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_wprt_ScheduleOfForeignCurrencyTable_0b9b91bd-f33e-4cdd-b696-4d5c3e6c80ee" xlink:to="loc_wprt_ScheduleOfForeignCurrencyLineItems_a1dcbee3-7700-4246-b259-399ab7070f1b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignCurrencyExchangeRateTranslation1_8ef759c7-512a-4fe5-807f-f3dc11034de0" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ForeignCurrencyExchangeRateTranslation1"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_wprt_ScheduleOfForeignCurrencyLineItems_a1dcbee3-7700-4246-b259-399ab7070f1b" xlink:to="loc_us-gaap_ForeignCurrencyExchangeRateTranslation1_8ef759c7-512a-4fe5-807f-f3dc11034de0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_AverageForeignCurrencyExchangeRateTranslation1_9b5e8c77-b308-4b72-9b9c-34c49655c6ba" xlink:href="wprt-20250630.xsd#wprt_AverageForeignCurrencyExchangeRateTranslation1"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_wprt_ScheduleOfForeignCurrencyLineItems_a1dcbee3-7700-4246-b259-399ab7070f1b" xlink:to="loc_wprt_AverageForeignCurrencyExchangeRateTranslation1_9b5e8c77-b308-4b72-9b9c-34c49655c6ba" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsNarrativeDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#HeldforsaledisposalgroupanddiscontinuedoperationsNarrativeDetails"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsNarrativeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract_193f55b2-1727-47bd-b23e-679834326db1" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_d149c6e9-f24e-4669-a4b3-27103905aca8" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract_193f55b2-1727-47bd-b23e-679834326db1" xlink:to="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_d149c6e9-f24e-4669-a4b3-27103905aca8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationAxis_5134b3de-e153-4eb4-8e06-1762d6bda9b2" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupClassificationAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_d149c6e9-f24e-4669-a4b3-27103905aca8" xlink:to="loc_us-gaap_DisposalGroupClassificationAxis_5134b3de-e153-4eb4-8e06-1762d6bda9b2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationDomain_e272441b-c443-4f6e-8ec5-6d42b90b0fb0" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupClassificationDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisposalGroupClassificationAxis_5134b3de-e153-4eb4-8e06-1762d6bda9b2" xlink:to="loc_us-gaap_DisposalGroupClassificationDomain_e272441b-c443-4f6e-8ec5-6d42b90b0fb0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationsHeldforsaleMember_410ecd19-c779-4ed6-a6d3-92f0f5f4dfa6" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DiscontinuedOperationsHeldforsaleMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisposalGroupClassificationDomain_e272441b-c443-4f6e-8ec5-6d42b90b0fb0" xlink:to="loc_us-gaap_DiscontinuedOperationsHeldforsaleMember_410ecd19-c779-4ed6-a6d3-92f0f5f4dfa6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationsDisposedOfBySaleMember_ab2b2d22-668c-486b-978a-7bcda2d707f0" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DiscontinuedOperationsDisposedOfBySaleMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisposalGroupClassificationDomain_e272441b-c443-4f6e-8ec5-6d42b90b0fb0" xlink:to="loc_us-gaap_DiscontinuedOperationsDisposedOfBySaleMember_ab2b2d22-668c-486b-978a-7bcda2d707f0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_011c90bc-7306-4cd5-8a9c-d8ad8b0f6cdb" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_d149c6e9-f24e-4669-a4b3-27103905aca8" xlink:to="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_011c90bc-7306-4cd5-8a9c-d8ad8b0f6cdb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_5b533083-f86b-4596-bf88-ce6f7aa05f32" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_011c90bc-7306-4cd5-8a9c-d8ad8b0f6cdb" xlink:to="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_5b533083-f86b-4596-bf88-ce6f7aa05f32" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_LightDutyMember_ebe19115-00ad-462a-abb7-e2a8338e3a78" xlink:href="wprt-20250630.xsd#wprt_LightDutyMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_5b533083-f86b-4596-bf88-ce6f7aa05f32" xlink:to="loc_wprt_LightDutyMember_ebe19115-00ad-462a-abb7-e2a8338e3a78" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeAxis_863898ad-0b7f-455a-b2b9-171133c4fb2c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SubsequentEventTypeAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_d149c6e9-f24e-4669-a4b3-27103905aca8" xlink:to="loc_us-gaap_SubsequentEventTypeAxis_863898ad-0b7f-455a-b2b9-171133c4fb2c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_d5f57fcb-710e-43e4-8036-d9b464eed0e0" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_863898ad-0b7f-455a-b2b9-171133c4fb2c" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_d5f57fcb-710e-43e4-8036-d9b464eed0e0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventMember_8c321c9b-613f-4692-8a10-ce6c205a0118" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SubsequentEventMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTypeDomain_d5f57fcb-710e-43e4-8036-d9b464eed0e0" xlink:to="loc_us-gaap_SubsequentEventMember_8c321c9b-613f-4692-8a10-ce6c205a0118" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermDebtTypeAxis_abc0fa20-306a-4356-bec2-027555531045" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShortTermDebtTypeAxis"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_d149c6e9-f24e-4669-a4b3-27103905aca8" xlink:to="loc_us-gaap_ShortTermDebtTypeAxis_abc0fa20-306a-4356-bec2-027555531045" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermDebtTypeDomain_187053c5-b1e0-4fb5-be76-7b9ffdf57230" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShortTermDebtTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShortTermDebtTypeAxis_abc0fa20-306a-4356-bec2-027555531045" xlink:to="loc_us-gaap_ShortTermDebtTypeDomain_187053c5-b1e0-4fb5-be76-7b9ffdf57230" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LoansPayableMember_d95fc0fb-0953-4de9-91e4-cb63fdbc5968" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LoansPayableMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShortTermDebtTypeDomain_187053c5-b1e0-4fb5-be76-7b9ffdf57230" xlink:to="loc_us-gaap_LoansPayableMember_d95fc0fb-0953-4de9-91e4-cb63fdbc5968" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_StatementScenarioAxis_7b825fe5-0788-444f-80c7-7877cbc9e5b5" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_StatementScenarioAxis"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_d149c6e9-f24e-4669-a4b3-27103905aca8" xlink:to="loc_srt_StatementScenarioAxis_7b825fe5-0788-444f-80c7-7877cbc9e5b5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScenarioUnspecifiedDomain_b63afa30-197d-463c-be28-bd2a5f55bace" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ScenarioUnspecifiedDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_StatementScenarioAxis_7b825fe5-0788-444f-80c7-7877cbc9e5b5" xlink:to="loc_srt_ScenarioUnspecifiedDomain_b63afa30-197d-463c-be28-bd2a5f55bace" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScenarioForecastMember_6f3ee8c2-1d5e-4dfc-9834-eb73d08c48ed" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ScenarioForecastMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ScenarioUnspecifiedDomain_b63afa30-197d-463c-be28-bd2a5f55bace" xlink:to="loc_srt_ScenarioForecastMember_6f3ee8c2-1d5e-4dfc-9834-eb73d08c48ed" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_6d4048da-e05b-4d2c-8594-1943dcfc7443" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_d149c6e9-f24e-4669-a4b3-27103905aca8" xlink:to="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_6d4048da-e05b-4d2c-8594-1943dcfc7443" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax_c9bfe39a-a78e-42ce-bf06-9e17ec9dde20" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_6d4048da-e05b-4d2c-8594-1943dcfc7443" xlink:to="loc_us-gaap_DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax_c9bfe39a-a78e-42ce-bf06-9e17ec9dde20" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationAdditionsToLongLivedAssets_af0e015c-e9fd-4522-8d00-5d2814da3c96" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationAdditionsToLongLivedAssets"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_6d4048da-e05b-4d2c-8594-1943dcfc7443" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationAdditionsToLongLivedAssets_af0e015c-e9fd-4522-8d00-5d2814da3c96" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentFaceAmount_78f1faaa-b54a-44f5-8301-9c33db4eb6ea" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtInstrumentFaceAmount"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_6d4048da-e05b-4d2c-8594-1943dcfc7443" xlink:to="loc_us-gaap_DebtInstrumentFaceAmount_78f1faaa-b54a-44f5-8301-9c33db4eb6ea" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration_a8a16ef1-601f-4213-97a2-ecfee8529902" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_6d4048da-e05b-4d2c-8594-1943dcfc7443" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration_a8a16ef1-601f-4213-97a2-ecfee8529902" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromDivestitureOfBusinesses_5c3395d4-9d8a-4342-bb92-a6f82e11260f" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ProceedsFromDivestitureOfBusinesses"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_6d4048da-e05b-4d2c-8594-1943dcfc7443" xlink:to="loc_us-gaap_ProceedsFromDivestitureOfBusinesses_5c3395d4-9d8a-4342-bb92-a6f82e11260f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrow_90ea0abd-63aa-40c7-b160-308b85ce02ee" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrow"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_6d4048da-e05b-4d2c-8594-1943dcfc7443" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrow_90ea0abd-63aa-40c7-b160-308b85ce02ee" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationEarnoutsMaximum_b9adf9ad-ddd4-4cd3-a66a-f9681cc785ef" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationEarnoutsMaximum"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_6d4048da-e05b-4d2c-8594-1943dcfc7443" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationEarnoutsMaximum_b9adf9ad-ddd4-4cd3-a66a-f9681cc785ef" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrowNumberOfTranches_7e4fa01a-034a-439e-aad3-c113c1fd7aec" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrowNumberOfTranches"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_6d4048da-e05b-4d2c-8594-1943dcfc7443" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrowNumberOfTranches_7e4fa01a-034a-439e-aad3-c113c1fd7aec" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract_01ac65ce-5ffa-4041-b42e-59ff4b8a964c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_51a99660-f3bc-48c5-af47-7ea3eb450d1f" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract_01ac65ce-5ffa-4041-b42e-59ff4b8a964c" xlink:to="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_51a99660-f3bc-48c5-af47-7ea3eb450d1f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_4ca976de-2e9f-430f-a811-892837a037a9" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_51a99660-f3bc-48c5-af47-7ea3eb450d1f" xlink:to="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_4ca976de-2e9f-430f-a811-892837a037a9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_6cd028fb-3245-40ee-820d-5238112ec034" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_4ca976de-2e9f-430f-a811-892837a037a9" xlink:to="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_6cd028fb-3245-40ee-820d-5238112ec034" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_LightDutyMember_4ea90d4d-ac83-402b-b2ab-447a3a100fc4" xlink:href="wprt-20250630.xsd#wprt_LightDutyMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_6cd028fb-3245-40ee-820d-5238112ec034" xlink:to="loc_wprt_LightDutyMember_4ea90d4d-ac83-402b-b2ab-447a3a100fc4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationAxis_925841a4-4ba9-4ba8-a3a3-784b146e8110" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupClassificationAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_51a99660-f3bc-48c5-af47-7ea3eb450d1f" xlink:to="loc_us-gaap_DisposalGroupClassificationAxis_925841a4-4ba9-4ba8-a3a3-784b146e8110" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationDomain_b7783b12-e4a6-4556-9525-0ec907e96ee8" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupClassificationDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisposalGroupClassificationAxis_925841a4-4ba9-4ba8-a3a3-784b146e8110" xlink:to="loc_us-gaap_DisposalGroupClassificationDomain_b7783b12-e4a6-4556-9525-0ec907e96ee8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationsHeldforsaleMember_0d986609-b18e-4755-a01e-5b2bc71c2aba" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DiscontinuedOperationsHeldforsaleMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisposalGroupClassificationDomain_b7783b12-e4a6-4556-9525-0ec907e96ee8" xlink:to="loc_us-gaap_DiscontinuedOperationsHeldforsaleMember_0d986609-b18e-4755-a01e-5b2bc71c2aba" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_51a99660-f3bc-48c5-af47-7ea3eb450d1f" xlink:to="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents_5b30da79-2459-4421-87fa-c22f383b0884" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents_5b30da79-2459-4421-87fa-c22f383b0884" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet_2e535e61-853b-4dc7-83ad-eec0a8958738" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet_2e535e61-853b-4dc7-83ad-eec0a8958738" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationInventoryCurrent_84f6c2af-bc18-417a-9def-74468db5ae20" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationInventoryCurrent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationInventoryCurrent_84f6c2af-bc18-417a-9def-74468db5ae20" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent_70afaaed-5e2b-4666-8fe4-d81234abd304" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent_70afaaed-5e2b-4666-8fe4-d81234abd304" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent_42826e30-772e-4422-bfae-be2d92b19237" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent_42826e30-772e-4422-bfae-be2d92b19237" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationInvestmentsNoncurrent_01a0881f-248a-43f0-b215-617b0bb6ba1c" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationInvestmentsNoncurrent"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationInvestmentsNoncurrent_01a0881f-248a-43f0-b215-617b0bb6ba1c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent_ffe92e90-d4d0-497b-a5e1-cebc239a614c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent_ffe92e90-d4d0-497b-a5e1-cebc239a614c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAssetNoncurrent_87d5eb31-b689-4b53-8707-aa5f44d19368" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAssetNoncurrent"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAssetNoncurrent_87d5eb31-b689-4b53-8707-aa5f44d19368" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent_c3b0067c-396a-4b10-99f7-c4d3505ac93c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent_c3b0067c-396a-4b10-99f7-c4d3505ac93c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationDeferredTaxAssets_ea6c0dfe-9464-402c-8894-854c59cfc4ba" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationDeferredTaxAssets"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationDeferredTaxAssets_ea6c0dfe-9464-402c-8894-854c59cfc4ba" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationGoodwillNoncurrent_51a95ed3-c3a4-4e9e-9c9a-809cb4f8cae2" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationGoodwillNoncurrent"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationGoodwillNoncurrent_51a95ed3-c3a4-4e9e-9c9a-809cb4f8cae2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets_7726c5ac-65e4-42c2-b3d8-0b40a14f768b" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets_7726c5ac-65e4-42c2-b3d8-0b40a14f768b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent_24e59dae-c26a-4942-81fd-1ad2f336cfba" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent_24e59dae-c26a-4942-81fd-1ad2f336cfba" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationValuationAllowance_1f412936-d824-47b9-94ea-ac8af78d27a2" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationValuationAllowance"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationValuationAllowance_1f412936-d824-47b9-94ea-ac8af78d27a2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation_7a6bb549-aafd-48a3-9b38-105030d4c0d4" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation"/>
    <link:presentationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation_7a6bb549-aafd-48a3-9b38-105030d4c0d4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsPayableAndAccruedLiabilitiesCurrent_15036cf5-9553-4448-8020-02747e19fca1" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsPayableAndAccruedLiabilitiesCurrent"/>
    <link:presentationArc order="16" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsPayableAndAccruedLiabilitiesCurrent_15036cf5-9553-4448-8020-02747e19fca1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityCurrent_4b77681e-f3e8-47c9-a098-b2f9cda9eced" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityCurrent"/>
    <link:presentationArc order="17" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityCurrent_4b77681e-f3e8-47c9-a098-b2f9cda9eced" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationLongTermDebtCurrent_4af2f947-891a-4cb3-8454-2b904d53ac8d" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationLongTermDebtCurrent"/>
    <link:presentationArc order="18" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationLongTermDebtCurrent_4af2f947-891a-4cb3-8454-2b904d53ac8d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualCurrent_a938486c-84ac-4a4f-813a-10172a26eb46" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualCurrent"/>
    <link:presentationArc order="19" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualCurrent_a938486c-84ac-4a4f-813a-10172a26eb46" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent_427377c0-bdee-4817-a7bb-73d8c70064bc" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent"/>
    <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent_427377c0-bdee-4817-a7bb-73d8c70064bc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent_88609e50-4ee8-4d29-b4fe-348f95c23fc8" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent"/>
    <link:presentationArc order="21" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent_88609e50-4ee8-4d29-b4fe-348f95c23fc8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationLongTermDebtNoncurrent_8c5d6799-31c0-4ff6-bd40-a0166d11f1e4" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationLongTermDebtNoncurrent"/>
    <link:presentationArc order="22" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationLongTermDebtNoncurrent_8c5d6799-31c0-4ff6-bd40-a0166d11f1e4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualNoncurrent_33afdff3-7a3e-4141-915e-2cfcbc74dc7a" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualNoncurrent"/>
    <link:presentationArc order="23" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualNoncurrent_33afdff3-7a3e-4141-915e-2cfcbc74dc7a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationDeferredTaxLiabilities_6c5693c0-4723-4b4c-9da0-2722d8ffd10a" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationDeferredTaxLiabilities"/>
    <link:presentationArc order="24" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationDeferredTaxLiabilities_6c5693c0-4723-4b4c-9da0-2722d8ffd10a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentLiabilities_205cc519-db2d-402e-8878-5fb9b28b8ce2" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentLiabilities"/>
    <link:presentationArc order="25" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentLiabilities_205cc519-db2d-402e-8878-5fb9b28b8ce2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent_056af7cb-91cd-48f4-a010-a98756b600f8" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent"/>
    <link:presentationArc order="26" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent_056af7cb-91cd-48f4-a010-a98756b600f8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation_9f2ab426-e3ce-4449-a5d7-3590a21c9395" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation"/>
    <link:presentationArc order="27" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_f9f0ef8d-4383-4d36-86e2-8473b3f45f71" xlink:to="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation_9f2ab426-e3ce-4449-a5d7-3590a21c9395" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract_8c8c28b6-42e2-474a-ad20-be611d9cadba" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_e1b890d3-a671-4b48-9691-95caf7979c89" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract_8c8c28b6-42e2-474a-ad20-be611d9cadba" xlink:to="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_e1b890d3-a671-4b48-9691-95caf7979c89" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationAxis_d28f4b91-0612-4920-bdb8-481f54fbd4c2" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupClassificationAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_e1b890d3-a671-4b48-9691-95caf7979c89" xlink:to="loc_us-gaap_DisposalGroupClassificationAxis_d28f4b91-0612-4920-bdb8-481f54fbd4c2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationDomain_ea71dfbb-d422-4ed2-bfc9-38353b4ee943" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupClassificationDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisposalGroupClassificationAxis_d28f4b91-0612-4920-bdb8-481f54fbd4c2" xlink:to="loc_us-gaap_DisposalGroupClassificationDomain_ea71dfbb-d422-4ed2-bfc9-38353b4ee943" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationsHeldforsaleMember_0ed2a815-3370-4856-8979-48d049069f93" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DiscontinuedOperationsHeldforsaleMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisposalGroupClassificationDomain_ea71dfbb-d422-4ed2-bfc9-38353b4ee943" xlink:to="loc_us-gaap_DiscontinuedOperationsHeldforsaleMember_0ed2a815-3370-4856-8979-48d049069f93" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_4c9f94d0-0c48-487b-b11e-3cc1aa5742eb" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_e1b890d3-a671-4b48-9691-95caf7979c89" xlink:to="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_4c9f94d0-0c48-487b-b11e-3cc1aa5742eb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_c5d8c8ac-0d57-4ece-9746-d4a1a0c4dae2" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_4c9f94d0-0c48-487b-b11e-3cc1aa5742eb" xlink:to="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_c5d8c8ac-0d57-4ece-9746-d4a1a0c4dae2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_LightDutyMember_864c5228-2106-4d72-a2bc-cdca37018222" xlink:href="wprt-20250630.xsd#wprt_LightDutyMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_c5d8c8ac-0d57-4ece-9746-d4a1a0c4dae2" xlink:to="loc_wprt_LightDutyMember_864c5228-2106-4d72-a2bc-cdca37018222" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_ea431ab2-7e1d-4ada-9365-ba14c873156b" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_e1b890d3-a671-4b48-9691-95caf7979c89" xlink:to="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_ea431ab2-7e1d-4ada-9365-ba14c873156b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue_ff0b3f33-9775-4c26-abd8-c0b43309408e" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_ea431ab2-7e1d-4ada-9365-ba14c873156b" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue_ff0b3f33-9775-4c26-abd8-c0b43309408e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold_2a0fc46d-e16a-433e-b833-a60c2c9fbc83" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_ea431ab2-7e1d-4ada-9365-ba14c873156b" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold_2a0fc46d-e16a-433e-b833-a60c2c9fbc83" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss_0868da34-e6ba-4104-b1df-c40aca8a3b3a" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_ea431ab2-7e1d-4ada-9365-ba14c873156b" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss_0868da34-e6ba-4104-b1df-c40aca8a3b3a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingExpensesAbstract_8af62a84-946f-4759-9932-167a5dcc8e6d" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationOperatingExpensesAbstract"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_ea431ab2-7e1d-4ada-9365-ba14c873156b" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingExpensesAbstract_8af62a84-946f-4759-9932-167a5dcc8e6d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationResearchAndDevelopmentExpense_6349e7ee-512c-4a4d-bcd7-282ccb5e2e9f" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationResearchAndDevelopmentExpense"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingExpensesAbstract_8af62a84-946f-4759-9932-167a5dcc8e6d" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationResearchAndDevelopmentExpense_6349e7ee-512c-4a4d-bcd7-282ccb5e2e9f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationGeneralAndAdministrativeExpense_5d708742-0edf-4590-ade1-6e1126e91d5f" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationGeneralAndAdministrativeExpense"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingExpensesAbstract_8af62a84-946f-4759-9932-167a5dcc8e6d" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationGeneralAndAdministrativeExpense_5d708742-0edf-4590-ade1-6e1126e91d5f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationSellingAndMarketingExpense_9125146a-c89c-4585-9f49-30fbb429c112" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationSellingAndMarketingExpense"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingExpensesAbstract_8af62a84-946f-4759-9932-167a5dcc8e6d" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationSellingAndMarketingExpense_9125146a-c89c-4585-9f49-30fbb429c112" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationForeignExchangeGainLoss_f7d2f580-c932-4c6a-a694-b34ea13b4385" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationForeignExchangeGainLoss"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingExpensesAbstract_8af62a84-946f-4759-9932-167a5dcc8e6d" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationForeignExchangeGainLoss_f7d2f580-c932-4c6a-a694-b34ea13b4385" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization_8c20b139-5cc2-41b9-a8e9-583c7e37ff0e" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingExpensesAbstract_8af62a84-946f-4759-9932-167a5dcc8e6d" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization_8c20b139-5cc2-41b9-a8e9-583c7e37ff0e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense_8683e4a8-878c-42ce-8cef-94ce9b06762e" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingExpensesAbstract_8af62a84-946f-4759-9932-167a5dcc8e6d" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense_8683e4a8-878c-42ce-8cef-94ce9b06762e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss_ff7caefc-2177-4bf1-a146-01096f8da45f" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_ea431ab2-7e1d-4ada-9365-ba14c873156b" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss_ff7caefc-2177-4bf1-a146-01096f8da45f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationIncomeLossFromEquityMethodInvestments_3b5e458e-ac9b-45a1-8b01-23780bbd2a88" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationIncomeLossFromEquityMethodInvestments"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_ea431ab2-7e1d-4ada-9365-ba14c873156b" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationIncomeLossFromEquityMethodInvestments_3b5e458e-ac9b-45a1-8b01-23780bbd2a88" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax_5c944b70-d367-4d8a-9ac4-f3b7efeeb205" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_ea431ab2-7e1d-4ada-9365-ba14c873156b" xlink:to="loc_us-gaap_DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax_5c944b70-d367-4d8a-9ac4-f3b7efeeb205" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationImpairmentOfLongLivedAssets_ae1a6f74-bc66-438c-92da-222e98471807" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationImpairmentOfLongLivedAssets"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_ea431ab2-7e1d-4ada-9365-ba14c873156b" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationImpairmentOfLongLivedAssets_ae1a6f74-bc66-438c-92da-222e98471807" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationInterestExpense_cc7ea476-67b2-48b4-be17-10aae74d299c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationInterestExpense"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_ea431ab2-7e1d-4ada-9365-ba14c873156b" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationInterestExpense_cc7ea476-67b2-48b4-be17-10aae74d299c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DisposalGroupIncludingDiscontinuedOperationInterestAndOtherIncomeExpense_45e89ed4-8d59-4340-ae67-46f4108c3711" xlink:href="wprt-20250630.xsd#wprt_DisposalGroupIncludingDiscontinuedOperationInterestAndOtherIncomeExpense"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_ea431ab2-7e1d-4ada-9365-ba14c873156b" xlink:to="loc_wprt_DisposalGroupIncludingDiscontinuedOperationInterestAndOtherIncomeExpense_45e89ed4-8d59-4340-ae67-46f4108c3711" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax_c138c750-f90e-44a5-a49c-f3934cf5ca2f" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_ea431ab2-7e1d-4ada-9365-ba14c873156b" xlink:to="loc_us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax_c138c750-f90e-44a5-a49c-f3934cf5ca2f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation_43e42bd0-61c2-4c61-a9be-b1fc95a10e8a" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_ea431ab2-7e1d-4ada-9365-ba14c873156b" xlink:to="loc_us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation_43e42bd0-61c2-4c61-a9be-b1fc95a10e8a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity_f8e410f7-ce4d-40dc-992a-513a87eae160" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_ea431ab2-7e1d-4ada-9365-ba14c873156b" xlink:to="loc_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity_f8e410f7-ce4d-40dc-992a-513a87eae160" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/AccountsreceivableScheduleofAccountsReceivableDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#AccountsreceivableScheduleofAccountsReceivableDetails"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/AccountsreceivableScheduleofAccountsReceivableDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReceivablesAbstract_a438facf-032d-460e-934e-31da5de26adf" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ReceivablesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable_fd42e7c1-bca5-4ec8-a96d-cb045366fc2e" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ReceivablesAbstract_a438facf-032d-460e-934e-31da5de26adf" xlink:to="loc_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable_fd42e7c1-bca5-4ec8-a96d-cb045366fc2e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_9bd5b0a6-3b23-4e90-ad21-0f0abb511fd0" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable_fd42e7c1-bca5-4ec8-a96d-cb045366fc2e" xlink:to="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_9bd5b0a6-3b23-4e90-ad21-0f0abb511fd0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyDomain_94c7481b-c491-4e0e-a97e-dd5113686555" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RelatedPartyDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_9bd5b0a6-3b23-4e90-ad21-0f0abb511fd0" xlink:to="loc_us-gaap_RelatedPartyDomain_94c7481b-c491-4e0e-a97e-dd5113686555" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyMember_43f35102-d905-4f29-8084-977d3dcef5c1" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RelatedPartyMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyDomain_94c7481b-c491-4e0e-a97e-dd5113686555" xlink:to="loc_us-gaap_RelatedPartyMember_43f35102-d905-4f29-8084-977d3dcef5c1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_4e35e094-1b63-4040-9285-20cbafcd47da" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountsNotesAndLoansReceivableLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable_fd42e7c1-bca5-4ec8-a96d-cb045366fc2e" xlink:to="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_4e35e094-1b63-4040-9285-20cbafcd47da" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_TradeAccountsReceivable_a2082cfa-7331-408b-a689-4f42bba5a85f" xlink:href="wprt-20250630.xsd#wprt_TradeAccountsReceivable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_4e35e094-1b63-4040-9285-20cbafcd47da" xlink:to="loc_wprt_TradeAccountsReceivable_a2082cfa-7331-408b-a689-4f42bba5a85f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_HoldbackReceivablesNetCurrent_45c20b20-7f96-4fc5-815d-095b68f4d3fc" xlink:href="wprt-20250630.xsd#wprt_HoldbackReceivablesNetCurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_4e35e094-1b63-4040-9285-20cbafcd47da" xlink:to="loc_wprt_HoldbackReceivablesNetCurrent_45c20b20-7f96-4fc5-815d-095b68f4d3fc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherReceivables_2fd96fa5-8c3d-4b3c-9249-df0568554825" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherReceivables"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_4e35e094-1b63-4040-9285-20cbafcd47da" xlink:to="loc_us-gaap_OtherReceivables_2fd96fa5-8c3d-4b3c-9249-df0568554825" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherReceivablesNetCurrent_7de6a098-8ab5-4851-afa9-65743d60c71f" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherReceivablesNetCurrent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_4e35e094-1b63-4040-9285-20cbafcd47da" xlink:to="loc_us-gaap_OtherReceivablesNetCurrent_7de6a098-8ab5-4851-afa9-65743d60c71f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_1dbb4593-2ce7-4fca-938e-9f6a48965402" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_4e35e094-1b63-4040-9285-20cbafcd47da" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_1dbb4593-2ce7-4fca-938e-9f6a48965402" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent_a1c181c9-83d8-408d-b744-9f1b6b5e4947" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountsReceivableNetCurrent"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_4e35e094-1b63-4040-9285-20cbafcd47da" xlink:to="loc_us-gaap_AccountsReceivableNetCurrent_a1c181c9-83d8-408d-b744-9f1b6b5e4947" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/AccountsreceivableNarrativeDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#AccountsreceivableNarrativeDetails"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/AccountsreceivableNarrativeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReceivablesAbstract_e314d461-d7d6-4c6f-b07b-9fffe6029837" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ReceivablesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable_3e006fed-7088-401d-a43e-5a68988db457" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ReceivablesAbstract_e314d461-d7d6-4c6f-b07b-9fffe6029837" xlink:to="loc_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable_3e006fed-7088-401d-a43e-5a68988db457" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_d441c56b-e6b6-402c-a4a2-02eae460b4e3" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable_3e006fed-7088-401d-a43e-5a68988db457" xlink:to="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_d441c56b-e6b6-402c-a4a2-02eae460b4e3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_EquityMethodInvesteeNameDomain_a9a14258-950a-4ebd-82a9-1db4c4b511f1" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_EquityMethodInvesteeNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_d441c56b-e6b6-402c-a4a2-02eae460b4e3" xlink:to="loc_srt_EquityMethodInvesteeNameDomain_a9a14258-950a-4ebd-82a9-1db4c4b511f1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_CumminsWestportIncMember_d9e9e0a4-288a-488a-b516-9d4b236e51a7" xlink:href="wprt-20250630.xsd#wprt_CumminsWestportIncMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_EquityMethodInvesteeNameDomain_a9a14258-950a-4ebd-82a9-1db4c4b511f1" xlink:to="loc_wprt_CumminsWestportIncMember_d9e9e0a4-288a-488a-b516-9d4b236e51a7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_e9f813fb-cdb8-4d40-817b-49df407b069a" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountsNotesAndLoansReceivableLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable_3e006fed-7088-401d-a43e-5a68988db457" xlink:to="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_e9f813fb-cdb8-4d40-817b-49df407b069a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_HoldbackTerm_215c2221-1d2a-4932-b12d-199cceac766e" xlink:href="wprt-20250630.xsd#wprt_HoldbackTerm"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_e9f813fb-cdb8-4d40-817b-49df407b069a" xlink:to="loc_wprt_HoldbackTerm_215c2221-1d2a-4932-b12d-199cceac766e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_HoldbackReceivablesNetCurrent_0b98a177-8fa4-43ea-bb21-198ca5c53c83" xlink:href="wprt-20250630.xsd#wprt_HoldbackReceivablesNetCurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountsNotesAndLoansReceivableLineItems_e9f813fb-cdb8-4d40-817b-49df407b069a" xlink:to="loc_wprt_HoldbackReceivablesNetCurrent_0b98a177-8fa4-43ea-bb21-198ca5c53c83" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/InventoriesScheduleofInventoriesDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#InventoriesScheduleofInventoriesDetails"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/InventoriesScheduleofInventoriesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryDisclosureAbstract_e47c510b-602c-43e3-944f-85a67ab5dd06" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InventoryDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherInventoryPurchasedGoods_eb5cd165-34e5-4061-bcad-69db02fa2d0f" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherInventoryPurchasedGoods"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_e47c510b-602c-43e3-944f-85a67ab5dd06" xlink:to="loc_us-gaap_OtherInventoryPurchasedGoods_eb5cd165-34e5-4061-bcad-69db02fa2d0f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryFinishedGoods_27bf4f34-8d54-4c19-8b9e-24b8b798853f" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InventoryFinishedGoods"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_e47c510b-602c-43e3-944f-85a67ab5dd06" xlink:to="loc_us-gaap_InventoryFinishedGoods_27bf4f34-8d54-4c19-8b9e-24b8b798853f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryNet_906507b6-df8a-46b4-a4d6-bec0a34e6275" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InventoryNet"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_e47c510b-602c-43e3-944f-85a67ab5dd06" xlink:to="loc_us-gaap_InventoryNet_906507b6-df8a-46b4-a4d6-bec0a34e6275" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/InventoriesNarrativeDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#InventoriesNarrativeDetails"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/InventoriesNarrativeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryDisclosureAbstract_1c453d25-a212-4877-a941-778426098585" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InventoryDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryWriteDown_286ee056-6873-483c-b471-d99d73917b33" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InventoryWriteDown"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_1c453d25-a212-4877-a941-778426098585" xlink:to="loc_us-gaap_InventoryWriteDown_286ee056-6873-483c-b471-d99d73917b33" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/LongterminvestmentsScheduleofInvestmentsDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#LongterminvestmentsScheduleofInvestmentsDetails"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/LongterminvestmentsScheduleofInvestmentsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract_84b73085-c7f9-4abd-a26d-cdc8d93fbe8b" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfInvestmentsTable_0159006d-7ee8-4dc7-8f18-f07cc308d8b1" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfInvestmentsTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract_84b73085-c7f9-4abd-a26d-cdc8d93fbe8b" xlink:to="loc_us-gaap_ScheduleOfInvestmentsTable_0159006d-7ee8-4dc7-8f18-f07cc308d8b1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_06d6fa2f-c7b9-4ee7-9c5e-44eaf1851411" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfInvestmentsTable_0159006d-7ee8-4dc7-8f18-f07cc308d8b1" xlink:to="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_06d6fa2f-c7b9-4ee7-9c5e-44eaf1851411" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_EquityMethodInvesteeNameDomain_6c785a5c-d450-44ac-a855-bb6950212b8e" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_EquityMethodInvesteeNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_06d6fa2f-c7b9-4ee7-9c5e-44eaf1851411" xlink:to="loc_srt_EquityMethodInvesteeNameDomain_6c785a5c-d450-44ac-a855-bb6950212b8e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_CespiraCanadaLPMember_45fba718-8255-42a3-9199-58a305645419" xlink:href="wprt-20250630.xsd#wprt_CespiraCanadaLPMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_EquityMethodInvesteeNameDomain_6c785a5c-d450-44ac-a855-bb6950212b8e" xlink:to="loc_wprt_CespiraCanadaLPMember_45fba718-8255-42a3-9199-58a305645419" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_CespiraSwedenABMember_04278ac2-3fa0-4e92-87ce-0ee9db2946d4" xlink:href="wprt-20250630.xsd#wprt_CespiraSwedenABMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_EquityMethodInvesteeNameDomain_6c785a5c-d450-44ac-a855-bb6950212b8e" xlink:to="loc_wprt_CespiraSwedenABMember_04278ac2-3fa0-4e92-87ce-0ee9db2946d4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_OtherEquityAccountedForInvesteesMember_b545720e-f570-4d32-a65d-947c9ae2d4c5" xlink:href="wprt-20250630.xsd#wprt_OtherEquityAccountedForInvesteesMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_EquityMethodInvesteeNameDomain_6c785a5c-d450-44ac-a855-bb6950212b8e" xlink:to="loc_wprt_OtherEquityAccountedForInvesteesMember_b545720e-f570-4d32-a65d-947c9ae2d4c5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfInvestmentsLineItems_91f805ae-94b2-4dfe-9840-7bcb4ce8b3cf" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfInvestmentsLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfInvestmentsTable_0159006d-7ee8-4dc7-8f18-f07cc308d8b1" xlink:to="loc_us-gaap_ScheduleOfInvestmentsLineItems_91f805ae-94b2-4dfe-9840-7bcb4ce8b3cf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermInvestments_7f51337b-5298-40c5-a3bf-9ebca1fa182d" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LongTermInvestments"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfInvestmentsLineItems_91f805ae-94b2-4dfe-9840-7bcb4ce8b3cf" xlink:to="loc_us-gaap_LongTermInvestments_7f51337b-5298-40c5-a3bf-9ebca1fa182d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/LongterminvestmentsNarrativeDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#LongterminvestmentsNarrativeDetails"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/LongterminvestmentsNarrativeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract_49f229c2-4d73-4602-8026-c7d92c09a1ba" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromEquityMethodInvestments_5b28ca74-80fb-4ab9-9de0-f8de2d9173a8" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeLossFromEquityMethodInvestments"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract_49f229c2-4d73-4602-8026-c7d92c09a1ba" xlink:to="loc_us-gaap_IncomeLossFromEquityMethodInvestments_5b28ca74-80fb-4ab9-9de0-f8de2d9173a8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireEquityMethodInvestments_40ea5bb3-5112-48a2-af21-3c7ffb6dfa9c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PaymentsToAcquireEquityMethodInvestments"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract_49f229c2-4d73-4602-8026-c7d92c09a1ba" xlink:to="loc_us-gaap_PaymentsToAcquireEquityMethodInvestments_40ea5bb3-5112-48a2-af21-3c7ffb6dfa9c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#LongterminvestmentsBalanceSheetDetails"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract_2115f7c9-6151-4359-937b-092e206326f0" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfInvestmentsTable_c7278e9a-0345-47a0-81ae-1ed855b70134" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfInvestmentsTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract_2115f7c9-6151-4359-937b-092e206326f0" xlink:to="loc_us-gaap_ScheduleOfInvestmentsTable_c7278e9a-0345-47a0-81ae-1ed855b70134" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeAxis_f78e5120-bc30-4d22-96f1-f91b8b6d101c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfInvestmentsTable_c7278e9a-0345-47a0-81ae-1ed855b70134" xlink:to="loc_us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeAxis_f78e5120-bc30-4d22-96f1-f91b8b6d101c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeDomain_75c5e84c-1fc5-4a19-bbdb-1f69994c5f1f" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeAxis_f78e5120-bc30-4d22-96f1-f91b8b6d101c" xlink:to="loc_us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeDomain_75c5e84c-1fc5-4a19-bbdb-1f69994c5f1f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_CespiraJointVentureMember_df80c4b3-e4f7-4b2d-859d-0335e0846066" xlink:href="wprt-20250630.xsd#wprt_CespiraJointVentureMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeDomain_75c5e84c-1fc5-4a19-bbdb-1f69994c5f1f" xlink:to="loc_wprt_CespiraJointVentureMember_df80c4b3-e4f7-4b2d-859d-0335e0846066" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfInvestmentsLineItems_8cc6b6e1-d150-4730-b96f-06cbeb830dbd" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfInvestmentsLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfInvestmentsTable_c7278e9a-0345-47a0-81ae-1ed855b70134" xlink:to="loc_us-gaap_ScheduleOfInvestmentsLineItems_8cc6b6e1-d150-4730-b96f-06cbeb830dbd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrentAbstract_c4819fae-9686-464d-9cca-8c68126fe662" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AssetsCurrentAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfInvestmentsLineItems_8cc6b6e1-d150-4730-b96f-06cbeb830dbd" xlink:to="loc_us-gaap_AssetsCurrentAbstract_c4819fae-9686-464d-9cca-8c68126fe662" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_6f128b60-26bb-4297-bf48-05077fadc0f5" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_c4819fae-9686-464d-9cca-8c68126fe662" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_6f128b60-26bb-4297-bf48-05077fadc0f5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent_e02d5327-bcc8-48d5-b38a-76a82ce8ebb7" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountsReceivableNetCurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_c4819fae-9686-464d-9cca-8c68126fe662" xlink:to="loc_us-gaap_AccountsReceivableNetCurrent_e02d5327-bcc8-48d5-b38a-76a82ce8ebb7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryNet_b20bfb3e-46dc-45bd-92a3-7cd07a5b68f4" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InventoryNet"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_c4819fae-9686-464d-9cca-8c68126fe662" xlink:to="loc_us-gaap_InventoryNet_b20bfb3e-46dc-45bd-92a3-7cd07a5b68f4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PrepaidExpenseCurrentAndNoncurrent_f8f9ea9a-96b0-442a-9f35-ea085c4a0ac5" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PrepaidExpenseCurrentAndNoncurrent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_c4819fae-9686-464d-9cca-8c68126fe662" xlink:to="loc_us-gaap_PrepaidExpenseCurrentAndNoncurrent_f8f9ea9a-96b0-442a-9f35-ea085c4a0ac5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrent_bf466f38-a6a8-453c-b32b-1fbc223d30d2" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AssetsCurrent"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_c4819fae-9686-464d-9cca-8c68126fe662" xlink:to="loc_us-gaap_AssetsCurrent_bf466f38-a6a8-453c-b32b-1fbc223d30d2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_3bf8e35d-0f9d-433f-be52-f8da0febcf0a" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfInvestmentsLineItems_8cc6b6e1-d150-4730-b96f-06cbeb830dbd" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentNet_3bf8e35d-0f9d-433f-be52-f8da0febcf0a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_0e2ceca5-d8c5-4ddf-b623-16ac6a0ff499" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfInvestmentsLineItems_8cc6b6e1-d150-4730-b96f-06cbeb830dbd" xlink:to="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_0e2ceca5-d8c5-4ddf-b623-16ac6a0ff499" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_f869d2a3-9fb4-47cf-a0f8-256248708bfc" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_Goodwill"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfInvestmentsLineItems_8cc6b6e1-d150-4730-b96f-06cbeb830dbd" xlink:to="loc_us-gaap_Goodwill_f869d2a3-9fb4-47cf-a0f8-256248708bfc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsGross_a0e37a95-3633-4dab-a54e-f7d6c77c7120" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DeferredTaxAssetsGross"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfInvestmentsLineItems_8cc6b6e1-d150-4730-b96f-06cbeb830dbd" xlink:to="loc_us-gaap_DeferredTaxAssetsGross_a0e37a95-3633-4dab-a54e-f7d6c77c7120" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Assets_87311f86-907d-4a11-ad96-374d61fe672c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_Assets"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfInvestmentsLineItems_8cc6b6e1-d150-4730-b96f-06cbeb830dbd" xlink:to="loc_us-gaap_Assets_87311f86-907d-4a11-ad96-374d61fe672c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrentAbstract_1b101042-c513-415a-af39-21477d0fd228" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LiabilitiesCurrentAbstract"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfInvestmentsLineItems_8cc6b6e1-d150-4730-b96f-06cbeb830dbd" xlink:to="loc_us-gaap_LiabilitiesCurrentAbstract_1b101042-c513-415a-af39-21477d0fd228" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent_351c6253-5210-47ea-9a2c-844ab45b3830" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_1b101042-c513-415a-af39-21477d0fd228" xlink:to="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent_351c6253-5210-47ea-9a2c-844ab45b3830" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermBorrowings_43513f95-6f00-4120-a137-cb3b871cd2c1" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShortTermBorrowings"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_1b101042-c513-415a-af39-21477d0fd228" xlink:to="loc_us-gaap_ShortTermBorrowings_43513f95-6f00-4120-a137-cb3b871cd2c1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherLiabilitiesCurrent_6c8f7232-5ad9-479e-8016-6d7249d48be3" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherLiabilitiesCurrent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_1b101042-c513-415a-af39-21477d0fd228" xlink:to="loc_us-gaap_OtherLiabilitiesCurrent_6c8f7232-5ad9-479e-8016-6d7249d48be3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilities_0b4963b7-cdc5-4b9a-b1a7-998866be6749" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DeferredIncomeTaxLiabilities"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_1b101042-c513-415a-af39-21477d0fd228" xlink:to="loc_us-gaap_DeferredIncomeTaxLiabilities_0b4963b7-cdc5-4b9a-b1a7-998866be6749" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrent_7009d297-0085-4d8c-9970-25170016a94a" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LiabilitiesCurrent"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_1b101042-c513-415a-af39-21477d0fd228" xlink:to="loc_us-gaap_LiabilitiesCurrent_7009d297-0085-4d8c-9970-25170016a94a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtAndCapitalLeaseObligations_3aed1a91-360f-4502-988a-10e1629b2f13" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligations"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfInvestmentsLineItems_8cc6b6e1-d150-4730-b96f-06cbeb830dbd" xlink:to="loc_us-gaap_LongTermDebtAndCapitalLeaseObligations_3aed1a91-360f-4502-988a-10e1629b2f13" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/netLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherLiabilitiesNoncurrent_1c2da50e-4a91-4be2-8b3e-925ad51ef0d5" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherLiabilitiesNoncurrent"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfInvestmentsLineItems_8cc6b6e1-d150-4730-b96f-06cbeb830dbd" xlink:to="loc_us-gaap_OtherLiabilitiesNoncurrent_1c2da50e-4a91-4be2-8b3e-925ad51ef0d5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Liabilities_89c4062e-2b1e-4342-bc4a-f7f406063cda" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_Liabilities"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfInvestmentsLineItems_8cc6b6e1-d150-4730-b96f-06cbeb830dbd" xlink:to="loc_us-gaap_Liabilities_89c4062e-2b1e-4342-bc4a-f7f406063cda" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsNet_ae5d9c76-51b3-42ee-b2a8-88eb8b8b9617" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AssetsNet"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfInvestmentsLineItems_8cc6b6e1-d150-4730-b96f-06cbeb830dbd" xlink:to="loc_us-gaap_AssetsNet_ae5d9c76-51b3-42ee-b2a8-88eb8b8b9617" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/LongterminvestmentsIncomeStatementDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#LongterminvestmentsIncomeStatementDetails"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/LongterminvestmentsIncomeStatementDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract_cb0f819c-de40-48e5-9c87-74fc4ac9582c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfInvestmentsTable_45d4cca1-f708-4b45-a590-7f3c6cd8258e" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfInvestmentsTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract_cb0f819c-de40-48e5-9c87-74fc4ac9582c" xlink:to="loc_us-gaap_ScheduleOfInvestmentsTable_45d4cca1-f708-4b45-a590-7f3c6cd8258e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeAxis_accb8a71-fb0f-4989-9622-7ff2afd7c156" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfInvestmentsTable_45d4cca1-f708-4b45-a590-7f3c6cd8258e" xlink:to="loc_us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeAxis_accb8a71-fb0f-4989-9622-7ff2afd7c156" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeDomain_37cd3ffd-5910-447b-9ef9-105b7131b6bf" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeAxis_accb8a71-fb0f-4989-9622-7ff2afd7c156" xlink:to="loc_us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeDomain_37cd3ffd-5910-447b-9ef9-105b7131b6bf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_CespiraJointVentureMember_f14a80a9-e61d-40af-a2c3-f6346514da60" xlink:href="wprt-20250630.xsd#wprt_CespiraJointVentureMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeDomain_37cd3ffd-5910-447b-9ef9-105b7131b6bf" xlink:to="loc_wprt_CespiraJointVentureMember_f14a80a9-e61d-40af-a2c3-f6346514da60" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfInvestmentsLineItems_151944f1-75ca-4270-979c-46c95c4c8bb2" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfInvestmentsLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfInvestmentsTable_45d4cca1-f708-4b45-a590-7f3c6cd8258e" xlink:to="loc_us-gaap_ScheduleOfInvestmentsLineItems_151944f1-75ca-4270-979c-46c95c4c8bb2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_a52ff1a2-d184-44e6-a7e6-06264895bdb8" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfInvestmentsLineItems_151944f1-75ca-4270-979c-46c95c4c8bb2" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_a52ff1a2-d184-44e6-a7e6-06264895bdb8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfRevenue_1b88416b-ff0d-46d8-a725-ac64f9ab709a" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CostOfRevenue"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfInvestmentsLineItems_151944f1-75ca-4270-979c-46c95c4c8bb2" xlink:to="loc_us-gaap_CostOfRevenue_1b88416b-ff0d-46d8-a725-ac64f9ab709a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit_a803aa36-32d8-4ce7-87c2-b2b47cb3309d" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_GrossProfit"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfInvestmentsLineItems_151944f1-75ca-4270-979c-46c95c4c8bb2" xlink:to="loc_us-gaap_GrossProfit_a803aa36-32d8-4ce7-87c2-b2b47cb3309d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfRevenueAbstract_087ec0e3-b8ec-4d5d-9e9e-9d45fd2f2f50" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CostOfRevenueAbstract"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfInvestmentsLineItems_151944f1-75ca-4270-979c-46c95c4c8bb2" xlink:to="loc_us-gaap_CostOfRevenueAbstract_087ec0e3-b8ec-4d5d-9e9e-9d45fd2f2f50" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpense_ef3e9e5e-94df-4566-aa97-f16afc05a61b" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ResearchAndDevelopmentExpense"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CostOfRevenueAbstract_087ec0e3-b8ec-4d5d-9e9e-9d45fd2f2f50" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpense_ef3e9e5e-94df-4566-aa97-f16afc05a61b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpense_b2be26db-b621-432b-9b24-970f42aab33b" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_GeneralAndAdministrativeExpense"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CostOfRevenueAbstract_087ec0e3-b8ec-4d5d-9e9e-9d45fd2f2f50" xlink:to="loc_us-gaap_GeneralAndAdministrativeExpense_b2be26db-b621-432b-9b24-970f42aab33b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingAndMarketingExpense_dc1b0343-73ae-4798-b369-d328881a6ce4" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SellingAndMarketingExpense"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CostOfRevenueAbstract_087ec0e3-b8ec-4d5d-9e9e-9d45fd2f2f50" xlink:to="loc_us-gaap_SellingAndMarketingExpense_dc1b0343-73ae-4798-b369-d328881a6ce4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_74351845-c05c-48d3-a905-3db3023a1ef5" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ForeignCurrencyTransactionGainLossBeforeTax"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CostOfRevenueAbstract_087ec0e3-b8ec-4d5d-9e9e-9d45fd2f2f50" xlink:to="loc_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_74351845-c05c-48d3-a905-3db3023a1ef5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedNetLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DepreciationAmortizationAndAccretionNet_6a5d4cc2-d010-4d2a-8910-22156b425372" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DepreciationAmortizationAndAccretionNet"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CostOfRevenueAbstract_087ec0e3-b8ec-4d5d-9e9e-9d45fd2f2f50" xlink:to="loc_us-gaap_DepreciationAmortizationAndAccretionNet_6a5d4cc2-d010-4d2a-8910-22156b425372" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostsAndExpenses_7861b4bf-a48f-4290-8507-6e5769478dc5" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CostsAndExpenses"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CostOfRevenueAbstract_087ec0e3-b8ec-4d5d-9e9e-9d45fd2f2f50" xlink:to="loc_us-gaap_CostsAndExpenses_7861b4bf-a48f-4290-8507-6e5769478dc5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_21f86718-0028-4b98-bf76-6247e8ef9cda" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfInvestmentsLineItems_151944f1-75ca-4270-979c-46c95c4c8bb2" xlink:to="loc_us-gaap_OperatingIncomeLoss_21f86718-0028-4b98-bf76-6247e8ef9cda" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestIncomeExpenseNonoperatingNet_44b3d215-e9fb-4dfb-a692-ef62d19c07d9" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InterestIncomeExpenseNonoperatingNet"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfInvestmentsLineItems_151944f1-75ca-4270-979c-46c95c4c8bb2" xlink:to="loc_us-gaap_InterestIncomeExpenseNonoperatingNet_44b3d215-e9fb-4dfb-a692-ef62d19c07d9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_389a2075-cf32-454b-b10b-8b9700103b12" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfInvestmentsLineItems_151944f1-75ca-4270-979c-46c95c4c8bb2" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_389a2075-cf32-454b-b10b-8b9700103b12" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_34278110-2763-4ec5-95d3-0a092b9188b9" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfInvestmentsLineItems_151944f1-75ca-4270-979c-46c95c4c8bb2" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_34278110-2763-4ec5-95d3-0a092b9188b9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_41b95b70-df51-493d-8f73-135b7af80567" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NetIncomeLoss"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfInvestmentsLineItems_151944f1-75ca-4270-979c-46c95c4c8bb2" xlink:to="loc_us-gaap_NetIncomeLoss_41b95b70-df51-493d-8f73-135b7af80567" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/PropertyplantandequipmentDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#PropertyplantandequipmentDetails"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/PropertyplantandequipmentDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAbstract_7f2e9b39-a0bf-4a37-b685-be16c8ae46b7" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PropertyPlantAndEquipmentAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_e214b62d-d58e-476e-94c7-f41221c37c55" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_7f2e9b39-a0bf-4a37-b685-be16c8ae46b7" xlink:to="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_e214b62d-d58e-476e-94c7-f41221c37c55" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_1fb368dc-d948-47a1-b4f2-2910a66d7dc0" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_e214b62d-d58e-476e-94c7-f41221c37c55" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_1fb368dc-d948-47a1-b4f2-2910a66d7dc0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_42cab6ac-9106-448f-8cc5-626d8fb2ed84" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_1fb368dc-d948-47a1-b4f2-2910a66d7dc0" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_42cab6ac-9106-448f-8cc5-626d8fb2ed84" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ComputerEquipmentAndSoftwareMember_ac872a7f-6660-4a40-b5bf-1d8a70618ade" xlink:href="wprt-20250630.xsd#wprt_ComputerEquipmentAndSoftwareMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_42cab6ac-9106-448f-8cc5-626d8fb2ed84" xlink:to="loc_wprt_ComputerEquipmentAndSoftwareMember_ac872a7f-6660-4a40-b5bf-1d8a70618ade" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FurnitureAndFixturesMember_220b2e85-cdf9-4679-a919-04a1c1917bb9" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_FurnitureAndFixturesMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_42cab6ac-9106-448f-8cc5-626d8fb2ed84" xlink:to="loc_us-gaap_FurnitureAndFixturesMember_220b2e85-cdf9-4679-a919-04a1c1917bb9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MachineryAndEquipmentMember_78e0f328-efa1-4b8c-8497-ba987a7ef41c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_MachineryAndEquipmentMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_42cab6ac-9106-448f-8cc5-626d8fb2ed84" xlink:to="loc_us-gaap_MachineryAndEquipmentMember_78e0f328-efa1-4b8c-8497-ba987a7ef41c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseholdImprovementsMember_35b1c857-bf60-443b-85ca-5b8e7aac13ad" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LeaseholdImprovementsMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_42cab6ac-9106-448f-8cc5-626d8fb2ed84" xlink:to="loc_us-gaap_LeaseholdImprovementsMember_35b1c857-bf60-443b-85ca-5b8e7aac13ad" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentLineItems_d3d25fa0-0558-435c-b010-05e9da71df21" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PropertyPlantAndEquipmentLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_e214b62d-d58e-476e-94c7-f41221c37c55" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentLineItems_d3d25fa0-0558-435c-b010-05e9da71df21" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentGross_e9ef19f9-79a2-4e13-a31a-02634b4c417e" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PropertyPlantAndEquipmentGross"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_d3d25fa0-0558-435c-b010-05e9da71df21" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentGross_e9ef19f9-79a2-4e13-a31a-02634b4c417e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_e8ec2dea-008f-4dbb-92d9-0a2a0ff7f68c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_d3d25fa0-0558-435c-b010-05e9da71df21" xlink:to="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_e8ec2dea-008f-4dbb-92d9-0a2a0ff7f68c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_e193db4d-c5a4-4f7d-951f-2f074f344cb1" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_d3d25fa0-0558-435c-b010-05e9da71df21" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentNet_e193db4d-c5a4-4f7d-951f-2f074f344cb1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/AccountspayableandaccruedliabilitiesDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#AccountspayableandaccruedliabilitiesDetails"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/AccountspayableandaccruedliabilitiesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PayablesAndAccrualsAbstract_c8c18280-2e2d-4486-babb-f4ebd2686fca" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_PayablesAndAccrualsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShortTermDebtTable_5bbbc117-3efc-4a67-a7f3-0e7abf0e6136" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfShortTermDebtTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PayablesAndAccrualsAbstract_c8c18280-2e2d-4486-babb-f4ebd2686fca" xlink:to="loc_us-gaap_ScheduleOfShortTermDebtTable_5bbbc117-3efc-4a67-a7f3-0e7abf0e6136" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_60d9f02a-43c5-4762-835f-496106204900" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShortTermDebtTable_5bbbc117-3efc-4a67-a7f3-0e7abf0e6136" xlink:to="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_60d9f02a-43c5-4762-835f-496106204900" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyDomain_33c3fbff-4776-469d-8192-99ce450e8632" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RelatedPartyDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_60d9f02a-43c5-4762-835f-496106204900" xlink:to="loc_us-gaap_RelatedPartyDomain_33c3fbff-4776-469d-8192-99ce450e8632" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyMember_a9a36d84-064b-4c43-8a97-e12b43087934" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RelatedPartyMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyDomain_33c3fbff-4776-469d-8192-99ce450e8632" xlink:to="loc_us-gaap_RelatedPartyMember_a9a36d84-064b-4c43-8a97-e12b43087934" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermDebtLineItems_53322454-10f8-4bb6-bd39-3974addabb5d" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShortTermDebtLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShortTermDebtTable_5bbbc117-3efc-4a67-a7f3-0e7abf0e6136" xlink:to="loc_us-gaap_ShortTermDebtLineItems_53322454-10f8-4bb6-bd39-3974addabb5d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableTradeCurrent_b41cfa46-d892-4e5b-9d82-b432d4a6762b" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountsPayableTradeCurrent"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShortTermDebtLineItems_53322454-10f8-4bb6-bd39-3974addabb5d" xlink:to="loc_us-gaap_AccountsPayableTradeCurrent_b41cfa46-d892-4e5b-9d82-b432d4a6762b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent_5cb80c8e-a808-4aa3-9600-5609f3e8699c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShortTermDebtLineItems_53322454-10f8-4bb6-bd39-3974addabb5d" xlink:to="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent_5cb80c8e-a808-4aa3-9600-5609f3e8699c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedIncomeTaxesCurrent_a8ad6ec1-b81d-43cd-a877-cc1b8680ed9f" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccruedIncomeTaxesCurrent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShortTermDebtLineItems_53322454-10f8-4bb6-bd39-3974addabb5d" xlink:to="loc_us-gaap_AccruedIncomeTaxesCurrent_a8ad6ec1-b81d-43cd-a877-cc1b8680ed9f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerLiabilityCurrent_9580d420-9d25-4dcd-b108-14450245732d" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ContractWithCustomerLiabilityCurrent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShortTermDebtLineItems_53322454-10f8-4bb6-bd39-3974addabb5d" xlink:to="loc_us-gaap_ContractWithCustomerLiabilityCurrent_9580d420-9d25-4dcd-b108-14450245732d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNotesPayableCurrent_f0346d28-d462-4b22-95a6-e4ea9ad40c16" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherNotesPayableCurrent"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShortTermDebtLineItems_53322454-10f8-4bb6-bd39-3974addabb5d" xlink:to="loc_us-gaap_OtherNotesPayableCurrent_f0346d28-d462-4b22-95a6-e4ea9ad40c16" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent_dffdd9c4-13fc-4bf5-8fa8-65061a131e2f" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShortTermDebtLineItems_53322454-10f8-4bb6-bd39-3974addabb5d" xlink:to="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent_dffdd9c4-13fc-4bf5-8fa8-65061a131e2f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesNarrativeDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#OperatingleasesrightofuseassetsandleaseliabilitiesNarrativeDetails"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesNarrativeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_d1fabccc-7f42-46c2-bd0e-5799a2f29f50" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_d055d557-bc50-4dd7-874b-b996465301ed" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_d1fabccc-7f42-46c2-bd0e-5799a2f29f50" xlink:to="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_d055d557-bc50-4dd7-874b-b996465301ed" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_9c0c600b-9946-458b-b0b4-d69d28407822" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_d1fabccc-7f42-46c2-bd0e-5799a2f29f50" xlink:to="loc_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_9c0c600b-9946-458b-b0b4-d69d28407822" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesComponentsofLeaseCostDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#OperatingleasesrightofuseassetsandleaseliabilitiesComponentsofLeaseCostDetails"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesComponentsofLeaseCostDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_e6055ed9-2b5e-48a6-ac5d-8ebe9a7cb9b8" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseRightOfUseAssetAmortization_019d3bde-aabc-4ce1-b357-51a322de7654" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_FinanceLeaseRightOfUseAssetAmortization"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_e6055ed9-2b5e-48a6-ac5d-8ebe9a7cb9b8" xlink:to="loc_us-gaap_FinanceLeaseRightOfUseAssetAmortization_019d3bde-aabc-4ce1-b357-51a322de7654" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseInterestExpense_4cb56304-e687-4e9e-b934-b797e9fc19c4" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_FinanceLeaseInterestExpense"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_e6055ed9-2b5e-48a6-ac5d-8ebe9a7cb9b8" xlink:to="loc_us-gaap_FinanceLeaseInterestExpense_4cb56304-e687-4e9e-b934-b797e9fc19c4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseCost_de226c36-13ad-440e-b7a9-be1f67c7bff6" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LeaseCost"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_e6055ed9-2b5e-48a6-ac5d-8ebe9a7cb9b8" xlink:to="loc_us-gaap_LeaseCost_de226c36-13ad-440e-b7a9-be1f67c7bff6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesMaturitiesofLeaseLiabilitiesDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#OperatingleasesrightofuseassetsandleaseliabilitiesMaturitiesofLeaseLiabilitiesDetails"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesMaturitiesofLeaseLiabilitiesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_04629f47-3d63-4099-b629-e6c96dff8036" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_86a63110-6f50-4664-a505-946ece169c0d" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_04629f47-3d63-4099-b629-e6c96dff8036" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_86a63110-6f50-4664-a505-946ece169c0d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_148e2125-24e2-4812-b5ef-d7356670473f" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_04629f47-3d63-4099-b629-e6c96dff8036" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_148e2125-24e2-4812-b5ef-d7356670473f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_fab2ea68-bbcc-4b7a-bf54-18b147ee267a" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_04629f47-3d63-4099-b629-e6c96dff8036" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_fab2ea68-bbcc-4b7a-bf54-18b147ee267a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_f9f23381-3fa8-4e55-8973-3a0d17181d95" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_04629f47-3d63-4099-b629-e6c96dff8036" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_f9f23381-3fa8-4e55-8973-3a0d17181d95" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_79f53a75-8c4f-485b-ba89-ac146ee3fcdc" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_04629f47-3d63-4099-b629-e6c96dff8036" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_79f53a75-8c4f-485b-ba89-ac146ee3fcdc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour_baced265-d0d9-47e2-b22f-0f0f254ad1f2" xlink:href="wprt-20250630.xsd#wprt_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_04629f47-3d63-4099-b629-e6c96dff8036" xlink:to="loc_wprt_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour_baced265-d0d9-47e2-b22f-0f0f254ad1f2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_bd4e581c-96a2-496f-a09e-993a08a6a3e2" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_04629f47-3d63-4099-b629-e6c96dff8036" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_bd4e581c-96a2-496f-a09e-993a08a6a3e2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_0557bb54-4352-45b8-a784-2563d6f286d8" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_04629f47-3d63-4099-b629-e6c96dff8036" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_0557bb54-4352-45b8-a784-2563d6f286d8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiability_cf0c960b-059a-4963-b322-10ce79333d77" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OperatingLeaseLiability"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_04629f47-3d63-4099-b629-e6c96dff8036" xlink:to="loc_us-gaap_OperatingLeaseLiability_cf0c960b-059a-4963-b322-10ce79333d77" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_3995e935-05cc-4d84-a3ef-fb60ba2707bb" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_04629f47-3d63-4099-b629-e6c96dff8036" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_3995e935-05cc-4d84-a3ef-fb60ba2707bb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_78dd55bb-6763-491c-9a8c-9a9dad239cca" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_04629f47-3d63-4099-b629-e6c96dff8036" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_78dd55bb-6763-491c-9a8c-9a9dad239cca" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/LongtermdebtTermLoanFacilitiesDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#LongtermdebtTermLoanFacilitiesDetails"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/LongtermdebtTermLoanFacilitiesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureAbstract_16651ec2-2a46-40bd-9562-091c1a1c52b4" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTable_60674fee-b784-4edd-a3b0-5f6a948605ab" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtInstrumentTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_16651ec2-2a46-40bd-9562-091c1a1c52b4" xlink:to="loc_us-gaap_DebtInstrumentTable_60674fee-b784-4edd-a3b0-5f6a948605ab" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityAxis_7c2b31c3-1875-4108-8379-342af2acefed" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CreditFacilityAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_60674fee-b784-4edd-a3b0-5f6a948605ab" xlink:to="loc_us-gaap_CreditFacilityAxis_7c2b31c3-1875-4108-8379-342af2acefed" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_e1b8903e-28a6-45c1-8b9f-c43c63d6aa70" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CreditFacilityDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityAxis_7c2b31c3-1875-4108-8379-342af2acefed" xlink:to="loc_us-gaap_CreditFacilityDomain_e1b8903e-28a6-45c1-8b9f-c43c63d6aa70" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SecuredDebtMember_2ffd8acf-afde-4f1f-b3b3-9b17e649ed81" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SecuredDebtMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityDomain_e1b8903e-28a6-45c1-8b9f-c43c63d6aa70" xlink:to="loc_us-gaap_SecuredDebtMember_2ffd8acf-afde-4f1f-b3b3-9b17e649ed81" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_5e5f8ac5-aaa5-4b57-845d-f7a6a260d3e2" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_60674fee-b784-4edd-a3b0-5f6a948605ab" xlink:to="loc_us-gaap_DebtInstrumentAxis_5e5f8ac5-aaa5-4b57-845d-f7a6a260d3e2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_21d96403-bc7e-4cc4-a1be-83ca51ec6c54" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentAxis_5e5f8ac5-aaa5-4b57-845d-f7a6a260d3e2" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_21d96403-bc7e-4cc4-a1be-83ca51ec6c54" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_EDCLoanMember_7b14a1c6-c9d0-41d6-9bf5-ad0323a12358" xlink:href="wprt-20250630.xsd#wprt_EDCLoanMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_21d96403-bc7e-4cc4-a1be-83ca51ec6c54" xlink:to="loc_wprt_EDCLoanMember_7b14a1c6-c9d0-41d6-9bf5-ad0323a12358" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentLineItems_b9f67c5d-190b-4ab0-ae9f-f451a8d3c272" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtInstrumentLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_60674fee-b784-4edd-a3b0-5f6a948605ab" xlink:to="loc_us-gaap_DebtInstrumentLineItems_b9f67c5d-190b-4ab0-ae9f-f451a8d3c272" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentInterestRateEffectivePercentage_eeb04743-b6bb-4603-a1fc-02223ffa7f0e" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtInstrumentInterestRateEffectivePercentage"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_b9f67c5d-190b-4ab0-ae9f-f451a8d3c272" xlink:to="loc_us-gaap_DebtInstrumentInterestRateEffectivePercentage_eeb04743-b6bb-4603-a1fc-02223ffa7f0e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtAndCapitalLeaseObligations_1c8d8700-dd2c-4679-9f01-dd30fefa4b3b" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtAndCapitalLeaseObligations"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_b9f67c5d-190b-4ab0-ae9f-f451a8d3c272" xlink:to="loc_us-gaap_DebtAndCapitalLeaseObligations_1c8d8700-dd2c-4679-9f01-dd30fefa4b3b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent_ab598184-1be3-4441-ba66-639e0b83a724" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_b9f67c5d-190b-4ab0-ae9f-f451a8d3c272" xlink:to="loc_us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent_ab598184-1be3-4441-ba66-639e0b83a724" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtAndCapitalLeaseObligations_eef1e706-0d8a-4322-a180-292e2c99bd82" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LongTermDebtAndCapitalLeaseObligations"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_b9f67c5d-190b-4ab0-ae9f-f451a8d3c272" xlink:to="loc_us-gaap_LongTermDebtAndCapitalLeaseObligations_eef1e706-0d8a-4322-a180-292e2c99bd82" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/LongtermdebtNarrativeDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#LongtermdebtNarrativeDetails"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/LongtermdebtNarrativeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureAbstract_5c82416c-5785-4d1c-b35d-09c9b37ddcbd" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTable_e36679fe-0a80-4f47-bad3-3d972f72a53a" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtInstrumentTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_5c82416c-5785-4d1c-b35d-09c9b37ddcbd" xlink:to="loc_us-gaap_DebtInstrumentTable_e36679fe-0a80-4f47-bad3-3d972f72a53a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityAxis_b34a2edc-095c-4fa8-bc4e-fa1d4c3ca8c8" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CreditFacilityAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_e36679fe-0a80-4f47-bad3-3d972f72a53a" xlink:to="loc_us-gaap_CreditFacilityAxis_b34a2edc-095c-4fa8-bc4e-fa1d4c3ca8c8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_51e78043-1953-49e3-b3bb-afc0138d7c29" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CreditFacilityDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityAxis_b34a2edc-095c-4fa8-bc4e-fa1d4c3ca8c8" xlink:to="loc_us-gaap_CreditFacilityDomain_51e78043-1953-49e3-b3bb-afc0138d7c29" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SecuredDebtMember_3b7f001e-de77-4e11-9ecb-ebeeafab9deb" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SecuredDebtMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityDomain_51e78043-1953-49e3-b3bb-afc0138d7c29" xlink:to="loc_us-gaap_SecuredDebtMember_3b7f001e-de77-4e11-9ecb-ebeeafab9deb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_3a88df7d-a5d0-4e21-943e-37c70f03562b" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_e36679fe-0a80-4f47-bad3-3d972f72a53a" xlink:to="loc_us-gaap_DebtInstrumentAxis_3a88df7d-a5d0-4e21-943e-37c70f03562b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_2ef6b223-849e-42b5-ba64-81ed8e581d3a" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentAxis_3a88df7d-a5d0-4e21-943e-37c70f03562b" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_2ef6b223-849e-42b5-ba64-81ed8e581d3a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_EDCLoanMember_49f1a057-aa18-4e0b-84a4-0a57b31b9b2c" xlink:href="wprt-20250630.xsd#wprt_EDCLoanMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_2ef6b223-849e-42b5-ba64-81ed8e581d3a" xlink:to="loc_wprt_EDCLoanMember_49f1a057-aa18-4e0b-84a4-0a57b31b9b2c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentLineItems_3b5f9540-a880-48fd-8ece-406cc87bb69a" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtInstrumentLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_e36679fe-0a80-4f47-bad3-3d972f72a53a" xlink:to="loc_us-gaap_DebtInstrumentLineItems_3b5f9540-a880-48fd-8ece-406cc87bb69a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentFaceAmount_3b83d0b5-22b7-438e-b817-af5e43bf6a16" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtInstrumentFaceAmount"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_3b5f9540-a880-48fd-8ece-406cc87bb69a" xlink:to="loc_us-gaap_DebtInstrumentFaceAmount_3b83d0b5-22b7-438e-b817-af5e43bf6a16" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/LongtermdebtScheduleofMaturitiesonSeniorFinancingDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#LongtermdebtScheduleofMaturitiesonSeniorFinancingDetails"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/LongtermdebtScheduleofMaturitiesonSeniorFinancingDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureAbstract_327c53c1-63cf-4817-aed1-1ca436cdf711" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTable_bb9a2cae-b34d-4432-974e-25c4f84b1628" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtInstrumentTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_327c53c1-63cf-4817-aed1-1ca436cdf711" xlink:to="loc_us-gaap_DebtInstrumentTable_bb9a2cae-b34d-4432-974e-25c4f84b1628" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityAxis_e7e93ae1-d9fc-44f3-a9e9-12580df06080" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CreditFacilityAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_bb9a2cae-b34d-4432-974e-25c4f84b1628" xlink:to="loc_us-gaap_CreditFacilityAxis_e7e93ae1-d9fc-44f3-a9e9-12580df06080" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_119b9898-a015-4361-b7c9-3a156c4833c7" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CreditFacilityDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityAxis_e7e93ae1-d9fc-44f3-a9e9-12580df06080" xlink:to="loc_us-gaap_CreditFacilityDomain_119b9898-a015-4361-b7c9-3a156c4833c7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SecuredDebtMember_e7948c25-cc8c-409a-b31e-4b2d66163d5b" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SecuredDebtMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityDomain_119b9898-a015-4361-b7c9-3a156c4833c7" xlink:to="loc_us-gaap_SecuredDebtMember_e7948c25-cc8c-409a-b31e-4b2d66163d5b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentLineItems_11a4ad87-e0ea-4c2f-85dc-7fc538efb709" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtInstrumentLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_bb9a2cae-b34d-4432-974e-25c4f84b1628" xlink:to="loc_us-gaap_DebtInstrumentLineItems_11a4ad87-e0ea-4c2f-85dc-7fc538efb709" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear_5a33c8ea-90db-42c2-8970-6d1a64e4bd68" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_11a4ad87-e0ea-4c2f-85dc-7fc538efb709" xlink:to="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear_5a33c8ea-90db-42c2-8970-6d1a64e4bd68" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_b887a129-2b45-4cb2-8894-6192dc96c857" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_11a4ad87-e0ea-4c2f-85dc-7fc538efb709" xlink:to="loc_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_b887a129-2b45-4cb2-8894-6192dc96c857" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentCarryingAmount_b38bc647-5692-454c-b3d9-083ecdc83a13" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DebtInstrumentCarryingAmount"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_11a4ad87-e0ea-4c2f-85dc-7fc538efb709" xlink:to="loc_us-gaap_DebtInstrumentCarryingAmount_b38bc647-5692-454c-b3d9-083ecdc83a13" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansNarrativeDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#SharecapitalstockoptionsandotherstockbasedplansNarrativeDetails"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansNarrativeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_fd04f128-65cf-4e35-ae16-5265a779caab" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_12168e73-8564-40e5-80e6-fde314ecfab8" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_fd04f128-65cf-4e35-ae16-5265a779caab" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_12168e73-8564-40e5-80e6-fde314ecfab8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_8f105300-41ef-4ced-a64b-526208d3c335" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AwardTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_12168e73-8564-40e5-80e6-fde314ecfab8" xlink:to="loc_us-gaap_AwardTypeAxis_8f105300-41ef-4ced-a64b-526208d3c335" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_735d1167-683d-4d85-aeb2-55d2f473e90f" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardTypeAxis_8f105300-41ef-4ced-a64b-526208d3c335" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_735d1167-683d-4d85-aeb2-55d2f473e90f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ShareUnitsMember_489ffc74-37fd-46f3-bb00-6ce7cb68ff73" xlink:href="wprt-20250630.xsd#wprt_ShareUnitsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_735d1167-683d-4d85-aeb2-55d2f473e90f" xlink:to="loc_wprt_ShareUnitsMember_489ffc74-37fd-46f3-bb00-6ce7cb68ff73" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember_bfbda74e-fc19-4dec-a254-c8bf7390b43c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RestrictedStockUnitsRSUMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_735d1167-683d-4d85-aeb2-55d2f473e90f" xlink:to="loc_us-gaap_RestrictedStockUnitsRSUMember_bfbda74e-fc19-4dec-a254-c8bf7390b43c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_PerformanceStockUnitsMember_a6be4245-802f-4339-b900-727f0974c409" xlink:href="wprt-20250630.xsd#wprt_PerformanceStockUnitsMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_735d1167-683d-4d85-aeb2-55d2f473e90f" xlink:to="loc_wprt_PerformanceStockUnitsMember_a6be4245-802f-4339-b900-727f0974c409" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DeferredShareUnitsMember_78c8b5ec-2697-455d-87bd-29f24d1307ba" xlink:href="wprt-20250630.xsd#wprt_DeferredShareUnitsMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_735d1167-683d-4d85-aeb2-55d2f473e90f" xlink:to="loc_wprt_DeferredShareUnitsMember_78c8b5ec-2697-455d-87bd-29f24d1307ba" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_ab193fa2-abd3-421c-a7fc-4b17779712b4" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_12168e73-8564-40e5-80e6-fde314ecfab8" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_ab193fa2-abd3-421c-a7fc-4b17779712b4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_09e8649c-428b-4ba1-a8d5-874f212725f4" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EquityComponentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_ab193fa2-abd3-421c-a7fc-4b17779712b4" xlink:to="loc_us-gaap_EquityComponentDomain_09e8649c-428b-4ba1-a8d5-874f212725f4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember_f9554ce0-5ecd-4fbc-b615-9af5122f4cad" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CommonStockMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_09e8649c-428b-4ba1-a8d5-874f212725f4" xlink:to="loc_us-gaap_CommonStockMember_f9554ce0-5ecd-4fbc-b615-9af5122f4cad" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_e2441473-4043-48fd-86ce-60a684a00d0e" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_12168e73-8564-40e5-80e6-fde314ecfab8" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_e2441473-4043-48fd-86ce-60a684a00d0e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_5af5f7f1-bff2-453a-b99f-9f02b5179114" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_e2441473-4043-48fd-86ce-60a684a00d0e" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_5af5f7f1-bff2-453a-b99f-9f02b5179114" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpense_21303c16-01f4-47b9-9279-54a2f4797987" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AllocatedShareBasedCompensationExpense"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_e2441473-4043-48fd-86ce-60a684a00d0e" xlink:to="loc_us-gaap_AllocatedShareBasedCompensationExpense_21303c16-01f4-47b9-9279-54a2f4797987" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted_d491fb96-21f8-42de-9edd-255b4bfad62e" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_e2441473-4043-48fd-86ce-60a684a00d0e" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted_d491fb96-21f8-42de-9edd-255b4bfad62e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_f6fde20f-1441-47e2-af60-c029c6738d72" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_e2441473-4043-48fd-86ce-60a684a00d0e" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_f6fde20f-1441-47e2-af60-c029c6738d72" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_e8eec366-f74e-4836-9563-fe598af76b15" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_e2441473-4043-48fd-86ce-60a684a00d0e" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_e8eec366-f74e-4836-9563-fe598af76b15" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_51268d28-e7f2-422e-8a7a-c1d2daa4d83b" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_e2441473-4043-48fd-86ce-60a684a00d0e" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_51268d28-e7f2-422e-8a7a-c1d2daa4d83b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ShareBasedPaymentArrangementExpenseSettledInShares_582efc83-1728-41f1-b252-a8550cfe47d2" xlink:href="wprt-20250630.xsd#wprt_ShareBasedPaymentArrangementExpenseSettledInShares"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_e2441473-4043-48fd-86ce-60a684a00d0e" xlink:to="loc_wprt_ShareBasedPaymentArrangementExpenseSettledInShares_582efc83-1728-41f1-b252-a8550cfe47d2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ShareBasedPaymentArrangementExpenseSettledInCash_34abdcad-67cd-4d6d-ac9b-3d8ac0c2d844" xlink:href="wprt-20250630.xsd#wprt_ShareBasedPaymentArrangementExpenseSettledInCash"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_e2441473-4043-48fd-86ce-60a684a00d0e" xlink:to="loc_wprt_ShareBasedPaymentArrangementExpenseSettledInCash_34abdcad-67cd-4d6d-ac9b-3d8ac0c2d844" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansShareunitsDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#SharecapitalstockoptionsandotherstockbasedplansShareunitsDetails"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansShareunitsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_c931f56b-fbe7-48ac-b22b-7955350afd5f" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_27af421a-a659-4459-b35f-cd7d30fe1eba" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_c931f56b-fbe7-48ac-b22b-7955350afd5f" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_27af421a-a659-4459-b35f-cd7d30fe1eba" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_64e2778d-a4d5-4948-9034-d5a492eaaf5b" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AwardTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_27af421a-a659-4459-b35f-cd7d30fe1eba" xlink:to="loc_us-gaap_AwardTypeAxis_64e2778d-a4d5-4948-9034-d5a492eaaf5b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_e0bbf12a-3abd-490c-b97e-df5608ed1480" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardTypeAxis_64e2778d-a4d5-4948-9034-d5a492eaaf5b" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_e0bbf12a-3abd-490c-b97e-df5608ed1480" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ShareUnitsMember_c021aaad-4b4a-479f-8370-3400d6cef100" xlink:href="wprt-20250630.xsd#wprt_ShareUnitsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_e0bbf12a-3abd-490c-b97e-df5608ed1480" xlink:to="loc_wprt_ShareUnitsMember_c021aaad-4b4a-479f-8370-3400d6cef100" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7b0f736b-f496-46f0-a5d7-503f0173ce2e" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_27af421a-a659-4459-b35f-cd7d30fe1eba" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7b0f736b-f496-46f0-a5d7-503f0173ce2e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_2c3ff626-8d1f-44d8-91f2-23ebb2e92e93" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7b0f736b-f496-46f0-a5d7-503f0173ce2e" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_2c3ff626-8d1f-44d8-91f2-23ebb2e92e93" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_4a546820-25f6-4772-ae4f-8bfa62b449b2" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_2c3ff626-8d1f-44d8-91f2-23ebb2e92e93" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_4a546820-25f6-4772-ae4f-8bfa62b449b2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted_8bc56093-4e07-414e-b69d-c3953260bb39" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_2c3ff626-8d1f-44d8-91f2-23ebb2e92e93" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted_8bc56093-4e07-414e-b69d-c3953260bb39" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised_1d5a54c1-0d77-41fb-ac2f-de6f231a23f8" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_2c3ff626-8d1f-44d8-91f2-23ebb2e92e93" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised_1d5a54c1-0d77-41fb-ac2f-de6f231a23f8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirations_2fee974c-32dd-463c-ad1b-a703cf10255c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirations"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_2c3ff626-8d1f-44d8-91f2-23ebb2e92e93" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirations_2fee974c-32dd-463c-ad1b-a703cf10255c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_76df3efd-d81b-44cc-8681-589062aa0550" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_2c3ff626-8d1f-44d8-91f2-23ebb2e92e93" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_76df3efd-d81b-44cc-8681-589062aa0550" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingAndExercisableNumber_828d60f6-0aed-48f0-a448-9d1159f6f5ee" xlink:href="wprt-20250630.xsd#wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingAndExercisableNumber"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7b0f736b-f496-46f0-a5d7-503f0173ce2e" xlink:to="loc_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingAndExercisableNumber_828d60f6-0aed-48f0-a448-9d1159f6f5ee" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_cd47e7be-a535-499f-a34b-1870b56364f4" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7b0f736b-f496-46f0-a5d7-503f0173ce2e" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_cd47e7be-a535-499f-a34b-1870b56364f4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingWeightedAverageGrantDateFairValue_18ebbaa5-7355-4077-847c-0f6fe12a6a62" xlink:href="wprt-20250630.xsd#wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_cd47e7be-a535-499f-a34b-1870b56364f4" xlink:to="loc_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingWeightedAverageGrantDateFairValue_18ebbaa5-7355-4077-847c-0f6fe12a6a62" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGrantedWeightedAverageGrantDateFairValue_eb342cf1-d9b0-4e9c-8b42-65eee785b961" xlink:href="wprt-20250630.xsd#wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGrantedWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_cd47e7be-a535-499f-a34b-1870b56364f4" xlink:to="loc_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGrantedWeightedAverageGrantDateFairValue_eb342cf1-d9b0-4e9c-8b42-65eee785b961" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercisedWeightedAverageGrantDateFairValue_2efbf8b9-6d8e-4deb-a481-ac0e3d528ad9" xlink:href="wprt-20250630.xsd#wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercisedWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_cd47e7be-a535-499f-a34b-1870b56364f4" xlink:to="loc_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercisedWeightedAverageGrantDateFairValue_2efbf8b9-6d8e-4deb-a481-ac0e3d528ad9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirationsWeightedAverageGrantDateFairValue_767e5c8e-f728-46a3-b320-1b66c8d5736b" xlink:href="wprt-20250630.xsd#wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirationsWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_cd47e7be-a535-499f-a34b-1870b56364f4" xlink:to="loc_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirationsWeightedAverageGrantDateFairValue_767e5c8e-f728-46a3-b320-1b66c8d5736b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingWeightedAverageGrantDateFairValue_d8bbfb67-c6f8-40b9-977f-4613e7db019a" xlink:href="wprt-20250630.xsd#wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_cd47e7be-a535-499f-a34b-1870b56364f4" xlink:to="loc_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingWeightedAverageGrantDateFairValue_d8bbfb67-c6f8-40b9-977f-4613e7db019a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingAndExercisableWeightedAverageGrantDateFairValue_d249bad4-aac2-48fc-8e6c-f114b8335db4" xlink:href="wprt-20250630.xsd#wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingAndExercisableWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7b0f736b-f496-46f0-a5d7-503f0173ce2e" xlink:to="loc_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingAndExercisableWeightedAverageGrantDateFairValue_d249bad4-aac2-48fc-8e6c-f114b8335db4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansAggregateintrinsicvaluesDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#SharecapitalstockoptionsandotherstockbasedplansAggregateintrinsicvaluesDetails"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansAggregateintrinsicvaluesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_cb9179da-f2b0-4962-b1d2-dc31d7cbd42b" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_6051fc3f-05f6-43a5-9683-84a73fb11b45" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_cb9179da-f2b0-4962-b1d2-dc31d7cbd42b" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_6051fc3f-05f6-43a5-9683-84a73fb11b45" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_9777177b-72ca-43ca-bc4b-c90a5837bdf2" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AwardTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_6051fc3f-05f6-43a5-9683-84a73fb11b45" xlink:to="loc_us-gaap_AwardTypeAxis_9777177b-72ca-43ca-bc4b-c90a5837bdf2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_f9b364e0-1528-47b4-b80a-4bf4e22e5bc4" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardTypeAxis_9777177b-72ca-43ca-bc4b-c90a5837bdf2" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_f9b364e0-1528-47b4-b80a-4bf4e22e5bc4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ShareUnitsMember_e5afcf0b-a6f2-4c88-8ee9-7ed4ac2c3f6a" xlink:href="wprt-20250630.xsd#wprt_ShareUnitsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_f9b364e0-1528-47b4-b80a-4bf4e22e5bc4" xlink:to="loc_wprt_ShareUnitsMember_e5afcf0b-a6f2-4c88-8ee9-7ed4ac2c3f6a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_3f48ab5f-c85f-4890-9d4c-3ab8b4ef310a" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_6051fc3f-05f6-43a5-9683-84a73fb11b45" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_3f48ab5f-c85f-4890-9d4c-3ab8b4ef310a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_44913ce3-43e8-48db-86d7-049b9cecb070" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_3f48ab5f-c85f-4890-9d4c-3ab8b4ef310a" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_44913ce3-43e8-48db-86d7-049b9cecb070" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_3c99f5ec-2c95-40bf-958c-c606a2c93fc3" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_3f48ab5f-c85f-4890-9d4c-3ab8b4ef310a" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_3c99f5ec-2c95-40bf-958c-c606a2c93fc3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_9322af60-1f4e-45e1-b8fc-3bfe1b95253f" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_3f48ab5f-c85f-4890-9d4c-3ab8b4ef310a" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_9322af60-1f4e-45e1-b8fc-3bfe1b95253f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansStockbasedcompensationDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#SharecapitalstockoptionsandotherstockbasedplansStockbasedcompensationDetails"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansStockbasedcompensationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_fd5d66e4-f93c-46db-acc7-dae27eff7f2c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_91e3d743-35d1-453c-81b7-1c0414badf41" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_fd5d66e4-f93c-46db-acc7-dae27eff7f2c" xlink:to="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_91e3d743-35d1-453c-81b7-1c0414badf41" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_435a129b-9590-4103-93e1-104a73e4fbe6" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeStatementLocationAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_91e3d743-35d1-453c-81b7-1c0414badf41" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_435a129b-9590-4103-93e1-104a73e4fbe6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_b5dafe75-fa47-44ef-be7e-6601126ea994" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_435a129b-9590-4103-93e1-104a73e4fbe6" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_b5dafe75-fa47-44ef-be7e-6601126ea994" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfSalesMember_aff68711-8482-44d9-8d59-274dd377e105" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CostOfSalesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_b5dafe75-fa47-44ef-be7e-6601126ea994" xlink:to="loc_us-gaap_CostOfSalesMember_aff68711-8482-44d9-8d59-274dd377e105" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpenseMember_f74904cc-ed65-4f6d-a505-5bd77719d24f" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ResearchAndDevelopmentExpenseMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_b5dafe75-fa47-44ef-be7e-6601126ea994" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpenseMember_f74904cc-ed65-4f6d-a505-5bd77719d24f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpenseMember_e78bb957-2cad-4121-acd0-1db2782fa557" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_GeneralAndAdministrativeExpenseMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_b5dafe75-fa47-44ef-be7e-6601126ea994" xlink:to="loc_us-gaap_GeneralAndAdministrativeExpenseMember_e78bb957-2cad-4121-acd0-1db2782fa557" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingAndMarketingExpenseMember_30f835d1-736c-47cf-9771-529035d01a5e" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SellingAndMarketingExpenseMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_b5dafe75-fa47-44ef-be7e-6601126ea994" xlink:to="loc_us-gaap_SellingAndMarketingExpenseMember_30f835d1-736c-47cf-9771-529035d01a5e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_a85e887e-6c93-4250-8f45-bb62d23c7a62" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_91e3d743-35d1-453c-81b7-1c0414badf41" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_a85e887e-6c93-4250-8f45-bb62d23c7a62" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpense_8785fe02-1881-426c-88d0-dd3dc527c641" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AllocatedShareBasedCompensationExpense"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_a85e887e-6c93-4250-8f45-bb62d23c7a62" xlink:to="loc_us-gaap_AllocatedShareBasedCompensationExpense_8785fe02-1881-426c-88d0-dd3dc527c641" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/RelatedpartytransactionsDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#RelatedpartytransactionsDetails"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/RelatedpartytransactionsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionsAbstract_2f7f3e3a-3a8d-432b-8ea4-f82019b15ecf" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RelatedPartyTransactionsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable_21cac540-05d9-40db-8697-1bfd584b5ba7" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyTransactionsAbstract_2f7f3e3a-3a8d-432b-8ea4-f82019b15ecf" xlink:to="loc_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable_21cac540-05d9-40db-8697-1bfd584b5ba7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_d4027919-4530-4d60-b553-4b28ac80e290" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable_21cac540-05d9-40db-8697-1bfd584b5ba7" xlink:to="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_d4027919-4530-4d60-b553-4b28ac80e290" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyDomain_bc48d66b-81b9-4602-b334-1aabcc773674" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RelatedPartyDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_d4027919-4530-4d60-b553-4b28ac80e290" xlink:to="loc_us-gaap_RelatedPartyDomain_bc48d66b-81b9-4602-b334-1aabcc773674" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_CespiraMember_2cf001fc-1422-453e-9ffa-6ea556e98ab5" xlink:href="wprt-20250630.xsd#wprt_CespiraMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyDomain_bc48d66b-81b9-4602-b334-1aabcc773674" xlink:to="loc_wprt_CespiraMember_2cf001fc-1422-453e-9ffa-6ea556e98ab5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionAxis_3c3c2f95-6d2e-4720-9fb6-5c21256081f1" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RelatedPartyTransactionAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable_21cac540-05d9-40db-8697-1bfd584b5ba7" xlink:to="loc_us-gaap_RelatedPartyTransactionAxis_3c3c2f95-6d2e-4720-9fb6-5c21256081f1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionDomain_2aadda4a-6448-4ff0-b1af-d6d164783eab" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RelatedPartyTransactionDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyTransactionAxis_3c3c2f95-6d2e-4720-9fb6-5c21256081f1" xlink:to="loc_us-gaap_RelatedPartyTransactionDomain_2aadda4a-6448-4ff0-b1af-d6d164783eab" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_SalesOfGoodsServicesAndOtherIncomeMember_b9aad691-66f7-4a01-ac77-dbb3063ae68b" xlink:href="wprt-20250630.xsd#wprt_SalesOfGoodsServicesAndOtherIncomeMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyTransactionDomain_2aadda4a-6448-4ff0-b1af-d6d164783eab" xlink:to="loc_wprt_SalesOfGoodsServicesAndOtherIncomeMember_b9aad691-66f7-4a01-ac77-dbb3063ae68b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_InventoryPurchasedServicesAndOtherExpensesMember_1bcfe47a-8471-4c80-9d87-f8ce19691a95" xlink:href="wprt-20250630.xsd#wprt_InventoryPurchasedServicesAndOtherExpensesMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyTransactionDomain_2aadda4a-6448-4ff0-b1af-d6d164783eab" xlink:to="loc_wprt_InventoryPurchasedServicesAndOtherExpensesMember_1bcfe47a-8471-4c80-9d87-f8ce19691a95" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionLineItems_cf218094-9025-4f72-b7f8-ba3ebcb1a9fb" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RelatedPartyTransactionLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable_21cac540-05d9-40db-8697-1bfd584b5ba7" xlink:to="loc_us-gaap_RelatedPartyTransactionLineItems_cf218094-9025-4f72-b7f8-ba3ebcb1a9fb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RelatedPartyTransactionAmountsOfTransaction_14030f39-0886-44f3-bb65-73c74b6d7e73" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RelatedPartyTransactionAmountsOfTransaction"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyTransactionLineItems_cf218094-9025-4f72-b7f8-ba3ebcb1a9fb" xlink:to="loc_us-gaap_RelatedPartyTransactionAmountsOfTransaction_14030f39-0886-44f3-bb65-73c74b6d7e73" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherReceivablesNetCurrent_fafac8de-c1b2-487d-9d10-2b15ebe1b566" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherReceivablesNetCurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyTransactionLineItems_cf218094-9025-4f72-b7f8-ba3ebcb1a9fb" xlink:to="loc_us-gaap_OtherReceivablesNetCurrent_fafac8de-c1b2-487d-9d10-2b15ebe1b566" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableCurrentAndNoncurrent_c6a1d925-34d1-4b2d-a05d-9c67cfd30c56" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountsPayableCurrentAndNoncurrent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RelatedPartyTransactionLineItems_cf218094-9025-4f72-b7f8-ba3ebcb1a9fb" xlink:to="loc_us-gaap_AccountsPayableCurrentAndNoncurrent_c6a1d925-34d1-4b2d-a05d-9c67cfd30c56" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/SegmentinformationNarrativeDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#SegmentinformationNarrativeDetails"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/SegmentinformationNarrativeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingAbstract_30ff2fca-d5c9-47a7-b2f9-2c7892ff398b" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SegmentReportingAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_db34f3ae-129d-4b69-a1a6-b79f11521d19" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_30ff2fca-d5c9-47a7-b2f9-2c7892ff398b" xlink:to="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_db34f3ae-129d-4b69-a1a6-b79f11521d19" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_0def751d-0f05-43a7-9dec-2021102e2e3b" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_db34f3ae-129d-4b69-a1a6-b79f11521d19" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_0def751d-0f05-43a7-9dec-2021102e2e3b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_0c3ed555-dee3-4aad-91ea-9021b00e37d2" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SegmentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_0def751d-0f05-43a7-9dec-2021102e2e3b" xlink:to="loc_us-gaap_SegmentDomain_0c3ed555-dee3-4aad-91ea-9021b00e37d2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_CespiraMember_8f6d9a2b-2a08-44b5-bbfb-44a0cc9e900d" xlink:href="wprt-20250630.xsd#wprt_CespiraMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_0c3ed555-dee3-4aad-91ea-9021b00e37d2" xlink:to="loc_wprt_CespiraMember_8f6d9a2b-2a08-44b5-bbfb-44a0cc9e900d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsAxis_5ecc9f9f-d1e1-4ceb-af0c-c299772ef1ff" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ConsolidationItemsAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_db34f3ae-129d-4b69-a1a6-b79f11521d19" xlink:to="loc_srt_ConsolidationItemsAxis_5ecc9f9f-d1e1-4ceb-af0c-c299772ef1ff" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsDomain_6d5ed13c-053c-4d6a-a42d-8351a5a55178" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ConsolidationItemsDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsAxis_5ecc9f9f-d1e1-4ceb-af0c-c299772ef1ff" xlink:to="loc_srt_ConsolidationItemsDomain_6d5ed13c-053c-4d6a-a42d-8351a5a55178" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingSegmentsMember_7f1f065b-a85c-4723-8418-a92a17eb9392" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OperatingSegmentsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsDomain_6d5ed13c-053c-4d6a-a42d-8351a5a55178" xlink:to="loc_us-gaap_OperatingSegmentsMember_7f1f065b-a85c-4723-8418-a92a17eb9392" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingInformationLineItems_61e6c65c-7f7a-402b-b795-f9ee5921fa70" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SegmentReportingInformationLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_db34f3ae-129d-4b69-a1a6-b79f11521d19" xlink:to="loc_us-gaap_SegmentReportingInformationLineItems_61e6c65c-7f7a-402b-b795-f9ee5921fa70" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NumberOfReportableSegments_972df2a3-326c-4f33-8dd4-a766247bf08e" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_NumberOfReportableSegments"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_61e6c65c-7f7a-402b-b795-f9ee5921fa70" xlink:to="loc_us-gaap_NumberOfReportableSegments_972df2a3-326c-4f33-8dd4-a766247bf08e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentExpenditureAdditionToLongLivedAssets_b0a36674-f443-43c9-8ca2-2db9410ebe30" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SegmentExpenditureAdditionToLongLivedAssets"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_61e6c65c-7f7a-402b-b795-f9ee5921fa70" xlink:to="loc_us-gaap_SegmentExpenditureAdditionToLongLivedAssets_b0a36674-f443-43c9-8ca2-2db9410ebe30" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/SegmentinformationFinancialinformationbybusinesssegmentDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#SegmentinformationFinancialinformationbybusinesssegmentDetails"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/SegmentinformationFinancialinformationbybusinesssegmentDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingAbstract_3110d18c-321a-4b75-bbd7-f257f4831f2a" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SegmentReportingAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_dbc37370-0685-43e9-ad2a-31140a2d3b59" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_3110d18c-321a-4b75-bbd7-f257f4831f2a" xlink:to="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_dbc37370-0685-43e9-ad2a-31140a2d3b59" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsAxis_7c97994c-645c-440f-92c6-3821b72f8caa" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ConsolidationItemsAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_dbc37370-0685-43e9-ad2a-31140a2d3b59" xlink:to="loc_srt_ConsolidationItemsAxis_7c97994c-645c-440f-92c6-3821b72f8caa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsDomain_e85812a7-ec1f-4c58-8b47-869da130aed8" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ConsolidationItemsDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsAxis_7c97994c-645c-440f-92c6-3821b72f8caa" xlink:to="loc_srt_ConsolidationItemsDomain_e85812a7-ec1f-4c58-8b47-869da130aed8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingSegmentsMember_d9c15695-0a07-4c7b-bb50-87e0ce4fc6ef" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OperatingSegmentsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsDomain_e85812a7-ec1f-4c58-8b47-869da130aed8" xlink:to="loc_us-gaap_OperatingSegmentsMember_d9c15695-0a07-4c7b-bb50-87e0ce4fc6ef" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationEliminationsMember_015a6671-fa07-4109-9777-20a55f4623c6" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ConsolidationEliminationsMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsDomain_e85812a7-ec1f-4c58-8b47-869da130aed8" xlink:to="loc_srt_ConsolidationEliminationsMember_015a6671-fa07-4109-9777-20a55f4623c6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CorporateNonSegmentMember_7770d841-85e5-44bc-aa97-4050acea2b2a" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CorporateNonSegmentMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsDomain_e85812a7-ec1f-4c58-8b47-869da130aed8" xlink:to="loc_us-gaap_CorporateNonSegmentMember_7770d841-85e5-44bc-aa97-4050acea2b2a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_a381a539-3624-4051-a67f-6862e02c8d27" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_dbc37370-0685-43e9-ad2a-31140a2d3b59" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_a381a539-3624-4051-a67f-6862e02c8d27" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_fbcd899f-85fc-48b4-af80-dfebe913835a" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SegmentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_a381a539-3624-4051-a67f-6862e02c8d27" xlink:to="loc_us-gaap_SegmentDomain_fbcd899f-85fc-48b4-af80-dfebe913835a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_HighPressureControlsSystemsMember_849708cd-a09d-4703-95ec-a787c208825f" xlink:href="wprt-20250630.xsd#wprt_HighPressureControlsSystemsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_fbcd899f-85fc-48b4-af80-dfebe913835a" xlink:to="loc_wprt_HighPressureControlsSystemsMember_849708cd-a09d-4703-95ec-a787c208825f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_HeavyDutyOEMMember_8efedf43-53e9-42b5-a972-7a5820f4205d" xlink:href="wprt-20250630.xsd#wprt_HeavyDutyOEMMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_fbcd899f-85fc-48b4-af80-dfebe913835a" xlink:to="loc_wprt_HeavyDutyOEMMember_8efedf43-53e9-42b5-a972-7a5820f4205d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_CespiraMember_23cfb150-7c03-41b4-9df2-79fe7c3e4fcd" xlink:href="wprt-20250630.xsd#wprt_CespiraMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_fbcd899f-85fc-48b4-af80-dfebe913835a" xlink:to="loc_wprt_CespiraMember_23cfb150-7c03-41b4-9df2-79fe7c3e4fcd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingInformationLineItems_1afc9983-03f9-400f-a2cc-1e3f32e5f554" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SegmentReportingInformationLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_dbc37370-0685-43e9-ad2a-31140a2d3b59" xlink:to="loc_us-gaap_SegmentReportingInformationLineItems_1afc9983-03f9-400f-a2cc-1e3f32e5f554" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_c9445d8c-1017-4cb3-9975-9477d04d6937" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_1afc9983-03f9-400f-a2cc-1e3f32e5f554" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_c9445d8c-1017-4cb3-9975-9477d04d6937" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold_c4dfcf60-fce1-48b2-90f5-b62737a9ee9a" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CostOfGoodsAndServicesSold"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_1afc9983-03f9-400f-a2cc-1e3f32e5f554" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSold_c4dfcf60-fce1-48b2-90f5-b62737a9ee9a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit_e54686a5-f1ce-4e3b-8d16-228858672892" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_GrossProfit"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_1afc9983-03f9-400f-a2cc-1e3f32e5f554" xlink:to="loc_us-gaap_GrossProfit_e54686a5-f1ce-4e3b-8d16-228858672892" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpense_1ae28d2a-b3db-47bd-9258-2525c9f6b879" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ResearchAndDevelopmentExpense"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_1afc9983-03f9-400f-a2cc-1e3f32e5f554" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpense_1ae28d2a-b3db-47bd-9258-2525c9f6b879" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ResearchAndDevelopmentExpenseAdjustmentForRounding_15cfb953-799b-4425-be92-60c4455b68bf" xlink:href="wprt-20250630.xsd#wprt_ResearchAndDevelopmentExpenseAdjustmentForRounding"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_1afc9983-03f9-400f-a2cc-1e3f32e5f554" xlink:to="loc_wprt_ResearchAndDevelopmentExpenseAdjustmentForRounding_15cfb953-799b-4425-be92-60c4455b68bf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpense_27522905-9f83-4149-90e5-86a13ae3735e" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_GeneralAndAdministrativeExpense"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_1afc9983-03f9-400f-a2cc-1e3f32e5f554" xlink:to="loc_us-gaap_GeneralAndAdministrativeExpense_27522905-9f83-4149-90e5-86a13ae3735e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingAndMarketingExpense_dc5acb48-302b-45e2-b797-e5d2ce36a63c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SellingAndMarketingExpense"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_1afc9983-03f9-400f-a2cc-1e3f32e5f554" xlink:to="loc_us-gaap_SellingAndMarketingExpense_dc5acb48-302b-45e2-b797-e5d2ce36a63c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DepreciationAmortizationAndAccretionNet_324956d6-d0e0-4ba9-a642-be3fcf3a1bdd" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DepreciationAmortizationAndAccretionNet"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_1afc9983-03f9-400f-a2cc-1e3f32e5f554" xlink:to="loc_us-gaap_DepreciationAmortizationAndAccretionNet_324956d6-d0e0-4ba9-a642-be3fcf3a1bdd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingExpenses_99b7c1e9-baf3-4814-9f09-d92093f0c006" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OperatingExpenses"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_1afc9983-03f9-400f-a2cc-1e3f32e5f554" xlink:to="loc_us-gaap_OperatingExpenses_99b7c1e9-baf3-4814-9f09-d92093f0c006" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DepreciationDepletionAndAmortization_1bc5c8b9-270f-4d64-8c7e-e2c497412936" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DepreciationDepletionAndAmortization"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_1afc9983-03f9-400f-a2cc-1e3f32e5f554" xlink:to="loc_us-gaap_DepreciationDepletionAndAmortization_1bc5c8b9-270f-4d64-8c7e-e2c497412936" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_SegmentEarningsBeforeInterestTaxDepreciationAndAmortization_d9ed33ff-878a-43d8-9171-f521b989e131" xlink:href="wprt-20250630.xsd#wprt_SegmentEarningsBeforeInterestTaxDepreciationAndAmortization"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_1afc9983-03f9-400f-a2cc-1e3f32e5f554" xlink:to="loc_wprt_SegmentEarningsBeforeInterestTaxDepreciationAndAmortization_d9ed33ff-878a-43d8-9171-f521b989e131" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromEquityMethodInvestments_36b9c3b5-864f-45a6-8e97-af8b54cc1dce" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeLossFromEquityMethodInvestments"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_1afc9983-03f9-400f-a2cc-1e3f32e5f554" xlink:to="loc_us-gaap_IncomeLossFromEquityMethodInvestments_36b9c3b5-864f-45a6-8e97-af8b54cc1dce" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/SegmentInformationReconciliationofSegmentEBITDAtoLossbeforeincometaxesDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#SegmentInformationReconciliationofSegmentEBITDAtoLossbeforeincometaxesDetails"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/SegmentInformationReconciliationofSegmentEBITDAtoLossbeforeincometaxesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingAbstract_24e3ebe3-3d81-4ff5-92ea-ed371a2d7836" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SegmentReportingAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_858ae511-c8f7-4d66-82b3-4325bd62aea6" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_24e3ebe3-3d81-4ff5-92ea-ed371a2d7836" xlink:to="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_858ae511-c8f7-4d66-82b3-4325bd62aea6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsAxis_37a50868-f9f7-433f-8585-f69234f6a8f7" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ConsolidationItemsAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_858ae511-c8f7-4d66-82b3-4325bd62aea6" xlink:to="loc_srt_ConsolidationItemsAxis_37a50868-f9f7-433f-8585-f69234f6a8f7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsDomain_539efb8b-9527-4a54-9381-cf6c8397d21f" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ConsolidationItemsDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsAxis_37a50868-f9f7-433f-8585-f69234f6a8f7" xlink:to="loc_srt_ConsolidationItemsDomain_539efb8b-9527-4a54-9381-cf6c8397d21f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingSegmentsMember_baa74016-9867-4666-8f2a-ef254ba82313" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OperatingSegmentsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsDomain_539efb8b-9527-4a54-9381-cf6c8397d21f" xlink:to="loc_us-gaap_OperatingSegmentsMember_baa74016-9867-4666-8f2a-ef254ba82313" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CorporateNonSegmentMember_35d30746-280e-47bd-83a2-0d4a4ac70f15" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CorporateNonSegmentMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsDomain_539efb8b-9527-4a54-9381-cf6c8397d21f" xlink:to="loc_us-gaap_CorporateNonSegmentMember_35d30746-280e-47bd-83a2-0d4a4ac70f15" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_50c7b691-857b-447c-990a-8d9684d140eb" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_858ae511-c8f7-4d66-82b3-4325bd62aea6" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_50c7b691-857b-447c-990a-8d9684d140eb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_a203b359-f309-45a0-8fa5-657019b706ba" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SegmentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_50c7b691-857b-447c-990a-8d9684d140eb" xlink:to="loc_us-gaap_SegmentDomain_a203b359-f309-45a0-8fa5-657019b706ba" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_CespiraMember_7a50b96c-cf5d-49b0-abb6-8f81b6b8530a" xlink:href="wprt-20250630.xsd#wprt_CespiraMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_a203b359-f309-45a0-8fa5-657019b706ba" xlink:to="loc_wprt_CespiraMember_7a50b96c-cf5d-49b0-abb6-8f81b6b8530a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingInformationLineItems_5efe7d8a-a3e5-4a37-a48e-fbd27716c674" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SegmentReportingInformationLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_858ae511-c8f7-4d66-82b3-4325bd62aea6" xlink:to="loc_us-gaap_SegmentReportingInformationLineItems_5efe7d8a-a3e5-4a37-a48e-fbd27716c674" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_SegmentEarningsBeforeInterestTaxDepreciationAndAmortization_434a3a56-540d-4d8e-9590-4c0e1dd3bf63" xlink:href="wprt-20250630.xsd#wprt_SegmentEarningsBeforeInterestTaxDepreciationAndAmortization"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_5efe7d8a-a3e5-4a37-a48e-fbd27716c674" xlink:to="loc_wprt_SegmentEarningsBeforeInterestTaxDepreciationAndAmortization_434a3a56-540d-4d8e-9590-4c0e1dd3bf63" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_DepreciationDepletionAndAmortizationAdjusted_3ed77a0d-cb6e-4802-bd1a-4ac54a4f4768" xlink:href="wprt-20250630.xsd#wprt_DepreciationDepletionAndAmortizationAdjusted"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_5efe7d8a-a3e5-4a37-a48e-fbd27716c674" xlink:to="loc_wprt_DepreciationDepletionAndAmortizationAdjusted_3ed77a0d-cb6e-4802-bd1a-4ac54a4f4768" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityMethodInvestmentRealizedGainLossOnDisposal_443656f2-f924-460e-92f1-8b29910ddf02" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_EquityMethodInvestmentRealizedGainLossOnDisposal"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_5efe7d8a-a3e5-4a37-a48e-fbd27716c674" xlink:to="loc_us-gaap_EquityMethodInvestmentRealizedGainLossOnDisposal_443656f2-f924-460e-92f1-8b29910ddf02" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingCostsAndExpenses_1e7822cc-5a3f-43f5-8840-d51068808d78" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OperatingCostsAndExpenses"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_5efe7d8a-a3e5-4a37-a48e-fbd27716c674" xlink:to="loc_us-gaap_OperatingCostsAndExpenses_1e7822cc-5a3f-43f5-8840-d51068808d78" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_61515282-1ced-46c2-8cc2-2f4742951a6d" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ForeignCurrencyTransactionGainLossBeforeTax"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_5efe7d8a-a3e5-4a37-a48e-fbd27716c674" xlink:to="loc_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_61515282-1ced-46c2-8cc2-2f4742951a6d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeconsolidationGainOrLossAmount_a8d01da0-4e4e-491f-9225-26a67e7fcbab" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_DeconsolidationGainOrLossAmount"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_5efe7d8a-a3e5-4a37-a48e-fbd27716c674" xlink:to="loc_us-gaap_DeconsolidationGainOrLossAmount_a8d01da0-4e4e-491f-9225-26a67e7fcbab" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestExpenseDebt_0204902a-af63-4b0c-bb9e-6a633a7503a2" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InterestExpenseDebt"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_5efe7d8a-a3e5-4a37-a48e-fbd27716c674" xlink:to="loc_us-gaap_InterestExpenseDebt_0204902a-af63-4b0c-bb9e-6a633a7503a2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestIncomeExpenseNonoperatingNet_06b24498-c718-4239-8b51-e7307c4064cd" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_InterestIncomeExpenseNonoperatingNet"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_5efe7d8a-a3e5-4a37-a48e-fbd27716c674" xlink:to="loc_us-gaap_InterestIncomeExpenseNonoperatingNet_06b24498-c718-4239-8b51-e7307c4064cd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_IncomeLossFromContinuingOperationsBeforeIncomeTaxesNoncontrollingInterestAdjustmentForRounding_432eb3c3-e4ae-43fb-b9d8-48a0b267f132" xlink:href="wprt-20250630.xsd#wprt_IncomeLossFromContinuingOperationsBeforeIncomeTaxesNoncontrollingInterestAdjustmentForRounding"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_5efe7d8a-a3e5-4a37-a48e-fbd27716c674" xlink:to="loc_wprt_IncomeLossFromContinuingOperationsBeforeIncomeTaxesNoncontrollingInterestAdjustmentForRounding_432eb3c3-e4ae-43fb-b9d8-48a0b267f132" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_6a1852c6-19d5-4715-a9a6-0305d1ce9454" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_5efe7d8a-a3e5-4a37-a48e-fbd27716c674" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_6a1852c6-19d5-4715-a9a6-0305d1ce9454" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/SegmentinformationAssetsDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#SegmentinformationAssetsDetails"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/SegmentinformationAssetsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingAbstract_741912ef-c1f0-48f9-a90c-dd404ab462de" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SegmentReportingAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_10f4fc4f-c2d8-4688-86a1-d0379b98c1bf" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_741912ef-c1f0-48f9-a90c-dd404ab462de" xlink:to="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_10f4fc4f-c2d8-4688-86a1-d0379b98c1bf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsAxis_d3fb686c-2f62-46e8-92d6-c8ea243c7331" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ConsolidationItemsAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_10f4fc4f-c2d8-4688-86a1-d0379b98c1bf" xlink:to="loc_srt_ConsolidationItemsAxis_d3fb686c-2f62-46e8-92d6-c8ea243c7331" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsDomain_99048341-82ae-43bb-90c8-9c633d2a4732" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ConsolidationItemsDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsAxis_d3fb686c-2f62-46e8-92d6-c8ea243c7331" xlink:to="loc_srt_ConsolidationItemsDomain_99048341-82ae-43bb-90c8-9c633d2a4732" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingSegmentsMember_a567941c-1623-4768-9af4-cd5e94751d8c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OperatingSegmentsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsDomain_99048341-82ae-43bb-90c8-9c633d2a4732" xlink:to="loc_us-gaap_OperatingSegmentsMember_a567941c-1623-4768-9af4-cd5e94751d8c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CorporateNonSegmentMember_9fe057e4-59e6-4c2b-b239-8c0530279447" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CorporateNonSegmentMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsDomain_99048341-82ae-43bb-90c8-9c633d2a4732" xlink:to="loc_us-gaap_CorporateNonSegmentMember_9fe057e4-59e6-4c2b-b239-8c0530279447" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_d7481d00-ba06-41da-83d4-0b6595423670" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_10f4fc4f-c2d8-4688-86a1-d0379b98c1bf" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_d7481d00-ba06-41da-83d4-0b6595423670" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_a169f762-9384-4771-9100-fd0a6b2e4cae" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SegmentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_d7481d00-ba06-41da-83d4-0b6595423670" xlink:to="loc_us-gaap_SegmentDomain_a169f762-9384-4771-9100-fd0a6b2e4cae" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_HighPressureControlsSystemsMember_e7746b71-d45f-43be-b4c4-8fa103f332cb" xlink:href="wprt-20250630.xsd#wprt_HighPressureControlsSystemsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_a169f762-9384-4771-9100-fd0a6b2e4cae" xlink:to="loc_wprt_HighPressureControlsSystemsMember_e7746b71-d45f-43be-b4c4-8fa103f332cb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_HeavyDutyOEMMember_6bae1aac-0646-49f8-bf63-baa67028b1be" xlink:href="wprt-20250630.xsd#wprt_HeavyDutyOEMMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_a169f762-9384-4771-9100-fd0a6b2e4cae" xlink:to="loc_wprt_HeavyDutyOEMMember_6bae1aac-0646-49f8-bf63-baa67028b1be" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingInformationLineItems_ceda8643-8944-4089-acec-1b4b9c619cfe" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SegmentReportingInformationLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_10f4fc4f-c2d8-4688-86a1-d0379b98c1bf" xlink:to="loc_us-gaap_SegmentReportingInformationLineItems_ceda8643-8944-4089-acec-1b4b9c619cfe" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentExpenditureAdditionToLongLivedAssets_0b28fc27-d32e-4eeb-96b3-20f03db81302" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SegmentExpenditureAdditionToLongLivedAssets"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_ceda8643-8944-4089-acec-1b4b9c619cfe" xlink:to="loc_us-gaap_SegmentExpenditureAdditionToLongLivedAssets_0b28fc27-d32e-4eeb-96b3-20f03db81302" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/SegmentinformationPercentofrevenuebygeographicallocationDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#SegmentinformationPercentofrevenuebygeographicallocationDetails"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/SegmentinformationPercentofrevenuebygeographicallocationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingAbstract_d2059ca8-ffdb-45c6-89e8-1662bfdc2f97" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SegmentReportingAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_86164f19-d54c-4637-b65b-43b05b2c88ea" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_d2059ca8-ffdb-45c6-89e8-1662bfdc2f97" xlink:to="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_86164f19-d54c-4637-b65b-43b05b2c88ea" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_StatementGeographicalAxis_a734fb8f-3b8c-4746-b88f-b40eb3187858" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_StatementGeographicalAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_86164f19-d54c-4637-b65b-43b05b2c88ea" xlink:to="loc_srt_StatementGeographicalAxis_a734fb8f-3b8c-4746-b88f-b40eb3187858" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_SegmentGeographicalDomain_ce8b7a80-d3b6-44f9-83e3-2544d98d37d3" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_SegmentGeographicalDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_StatementGeographicalAxis_a734fb8f-3b8c-4746-b88f-b40eb3187858" xlink:to="loc_srt_SegmentGeographicalDomain_ce8b7a80-d3b6-44f9-83e3-2544d98d37d3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_EuropeMember_dd63fea6-0845-4023-b171-3ea31ea2e31c" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_EuropeMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_ce8b7a80-d3b6-44f9-83e3-2544d98d37d3" xlink:to="loc_srt_EuropeMember_dd63fea6-0845-4023-b171-3ea31ea2e31c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_AsiaMember_1b25e8a8-c615-4887-9523-2515ba5c1d5b" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_AsiaMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_ce8b7a80-d3b6-44f9-83e3-2544d98d37d3" xlink:to="loc_srt_AsiaMember_1b25e8a8-c615-4887-9523-2515ba5c1d5b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_AmericasMember_1c065280-0619-4273-9586-f78cffae7ac7" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_AmericasMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_ce8b7a80-d3b6-44f9-83e3-2544d98d37d3" xlink:to="loc_srt_AmericasMember_1c065280-0619-4273-9586-f78cffae7ac7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskByTypeAxis_2c376c2d-898f-4504-b1fa-1e48012183c7" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ConcentrationRiskByTypeAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_86164f19-d54c-4637-b65b-43b05b2c88ea" xlink:to="loc_us-gaap_ConcentrationRiskByTypeAxis_2c376c2d-898f-4504-b1fa-1e48012183c7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain_b47c6d25-3ef1-4163-8068-a71883caebda" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ConcentrationRiskTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis_2c376c2d-898f-4504-b1fa-1e48012183c7" xlink:to="loc_us-gaap_ConcentrationRiskTypeDomain_b47c6d25-3ef1-4163-8068-a71883caebda" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GeographicConcentrationRiskMember_0c574352-5680-4c2b-a86c-e0f21841d2fa" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_GeographicConcentrationRiskMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskTypeDomain_b47c6d25-3ef1-4163-8068-a71883caebda" xlink:to="loc_us-gaap_GeographicConcentrationRiskMember_0c574352-5680-4c2b-a86c-e0f21841d2fa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_01115ea0-a962-4efa-af16-6cca35489040" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_86164f19-d54c-4637-b65b-43b05b2c88ea" xlink:to="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_01115ea0-a962-4efa-af16-6cca35489040" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_84e6746d-4e61-4eb1-9f5d-8e06aba4f1a4" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ConcentrationRiskBenchmarkDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_01115ea0-a962-4efa-af16-6cca35489040" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_84e6746d-4e61-4eb1-9f5d-8e06aba4f1a4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SalesRevenueProductLineMember_fbd4755a-e7ac-46e3-b69f-d9b8a27f36d8" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SalesRevenueProductLineMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_84e6746d-4e61-4eb1-9f5d-8e06aba4f1a4" xlink:to="loc_us-gaap_SalesRevenueProductLineMember_fbd4755a-e7ac-46e3-b69f-d9b8a27f36d8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingInformationLineItems_75d8927f-4daf-4e62-a654-1b584ad28418" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SegmentReportingInformationLineItems"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_86164f19-d54c-4637-b65b-43b05b2c88ea" xlink:to="loc_us-gaap_SegmentReportingInformationLineItems_75d8927f-4daf-4e62-a654-1b584ad28418" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskPercentage1_dcc9ba47-3276-41e9-9db1-a2c024ff7f3e" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ConcentrationRiskPercentage1"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_75d8927f-4daf-4e62-a654-1b584ad28418" xlink:to="loc_us-gaap_ConcentrationRiskPercentage1_dcc9ba47-3276-41e9-9db1-a2c024ff7f3e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/SegmentInformationTotalassetallocationDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#SegmentInformationTotalassetallocationDetails"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/SegmentInformationTotalassetallocationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingAbstract_be844b89-7e2d-4d12-aa66-2b29e0b24ecd" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SegmentReportingAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReconciliationOfAssetsFromSegmentToConsolidatedTable_5dc9b000-23ba-4998-ad84-ed516ee4400a" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ReconciliationOfAssetsFromSegmentToConsolidatedTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_be844b89-7e2d-4d12-aa66-2b29e0b24ecd" xlink:to="loc_us-gaap_ReconciliationOfAssetsFromSegmentToConsolidatedTable_5dc9b000-23ba-4998-ad84-ed516ee4400a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsAxis_8e1e42c7-6f1d-4eed-bdc9-a5e5af42e443" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ConsolidationItemsAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ReconciliationOfAssetsFromSegmentToConsolidatedTable_5dc9b000-23ba-4998-ad84-ed516ee4400a" xlink:to="loc_srt_ConsolidationItemsAxis_8e1e42c7-6f1d-4eed-bdc9-a5e5af42e443" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsDomain_7fb9df38-3663-4b22-ad2e-a7e19564c413" xlink:href="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd#srt_ConsolidationItemsDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsAxis_8e1e42c7-6f1d-4eed-bdc9-a5e5af42e443" xlink:to="loc_srt_ConsolidationItemsDomain_7fb9df38-3663-4b22-ad2e-a7e19564c413" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingSegmentsMember_a5ae27d3-9ee7-420e-940a-2a82e3bf4e96" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OperatingSegmentsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsDomain_7fb9df38-3663-4b22-ad2e-a7e19564c413" xlink:to="loc_us-gaap_OperatingSegmentsMember_a5ae27d3-9ee7-420e-940a-2a82e3bf4e96" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CorporateNonSegmentMember_61425e20-55ab-4f9f-98ae-30df290b5045" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CorporateNonSegmentMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsDomain_7fb9df38-3663-4b22-ad2e-a7e19564c413" xlink:to="loc_us-gaap_CorporateNonSegmentMember_61425e20-55ab-4f9f-98ae-30df290b5045" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_98a45e7d-e0e8-4141-aae2-8405f3f0488c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ReconciliationOfAssetsFromSegmentToConsolidatedTable_5dc9b000-23ba-4998-ad84-ed516ee4400a" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_98a45e7d-e0e8-4141-aae2-8405f3f0488c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_556e2afd-e2b1-49bf-b3f4-117ebc7c3985" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SegmentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_98a45e7d-e0e8-4141-aae2-8405f3f0488c" xlink:to="loc_us-gaap_SegmentDomain_556e2afd-e2b1-49bf-b3f4-117ebc7c3985" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_LightDutyMember_a9959811-802c-4f13-9bb2-89cd22b6f330" xlink:href="wprt-20250630.xsd#wprt_LightDutyMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_556e2afd-e2b1-49bf-b3f4-117ebc7c3985" xlink:to="loc_wprt_LightDutyMember_a9959811-802c-4f13-9bb2-89cd22b6f330" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_HighPressureControlsSystemsMember_31ef3735-5a3e-41ba-8b80-c6f2eb88c64c" xlink:href="wprt-20250630.xsd#wprt_HighPressureControlsSystemsMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_556e2afd-e2b1-49bf-b3f4-117ebc7c3985" xlink:to="loc_wprt_HighPressureControlsSystemsMember_31ef3735-5a3e-41ba-8b80-c6f2eb88c64c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_HeavyDutyOEMMember_6117c04b-2e1d-4a29-aa5a-b98f7c72c4d6" xlink:href="wprt-20250630.xsd#wprt_HeavyDutyOEMMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_556e2afd-e2b1-49bf-b3f4-117ebc7c3985" xlink:to="loc_wprt_HeavyDutyOEMMember_6117c04b-2e1d-4a29-aa5a-b98f7c72c4d6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingAssetReconcilingItemLineItems_b2e4d13c-c25b-4932-afb6-2c8fb620605a" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SegmentReportingAssetReconcilingItemLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ReconciliationOfAssetsFromSegmentToConsolidatedTable_5dc9b000-23ba-4998-ad84-ed516ee4400a" xlink:to="loc_us-gaap_SegmentReportingAssetReconcilingItemLineItems_b2e4d13c-c25b-4932-afb6-2c8fb620605a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Assets_d49d6f94-d9b8-4652-8a75-3cbdd9d0dc6f" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_Assets"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAssetReconcilingItemLineItems_b2e4d13c-c25b-4932-afb6-2c8fb620605a" xlink:to="loc_us-gaap_Assets_d49d6f94-d9b8-4652-8a75-3cbdd9d0dc6f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/FinancialinstrumentsNarrativeDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#FinancialinstrumentsNarrativeDetails"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/FinancialinstrumentsNarrativeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_wprt_FinancialInstrumentsDisclosureAbstract_3c64e905-8d3e-45d6-a15c-ff2058129a5a" xlink:href="wprt-20250630.xsd#wprt_FinancialInstrumentsDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsAndShortTermInvestments_9df85c92-38a1-4037-b70d-c57390d8e3c4" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_CashCashEquivalentsAndShortTermInvestments"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_wprt_FinancialInstrumentsDisclosureAbstract_3c64e905-8d3e-45d6-a15c-ff2058129a5a" xlink:to="loc_us-gaap_CashCashEquivalentsAndShortTermInvestments_9df85c92-38a1-4037-b70d-c57390d8e3c4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedCashAndCashEquivalents_95bd4eaf-23ca-4f06-a92c-7f845e598c66" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_RestrictedCashAndCashEquivalents"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_wprt_FinancialInstrumentsDisclosureAbstract_3c64e905-8d3e-45d6-a15c-ff2058129a5a" xlink:to="loc_us-gaap_RestrictedCashAndCashEquivalents_95bd4eaf-23ca-4f06-a92c-7f845e598c66" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.westport.com/role/FinancialinstrumentsFinancialObligationsDetails" xlink:type="simple" xlink:href="wprt-20250630.xsd#FinancialinstrumentsFinancialObligationsDetails"/>
  <link:presentationLink xlink:role="http://www.westport.com/role/FinancialinstrumentsFinancialObligationsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_wprt_FinancialInstrumentsDisclosureAbstract_be0c9623-c6d1-4518-a5db-c47d18c20a80" xlink:href="wprt-20250630.xsd#wprt_FinancialInstrumentsDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherCommitmentsTable_3fad9584-fc47-4d48-a3f7-2ea0f17b4d8a" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherCommitmentsTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_wprt_FinancialInstrumentsDisclosureAbstract_be0c9623-c6d1-4518-a5db-c47d18c20a80" xlink:to="loc_us-gaap_OtherCommitmentsTable_3fad9584-fc47-4d48-a3f7-2ea0f17b4d8a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ContractualObligationsTypeAxis_822011f8-9132-4542-a3c6-30550bbdedaa" xlink:href="wprt-20250630.xsd#wprt_ContractualObligationsTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherCommitmentsTable_3fad9584-fc47-4d48-a3f7-2ea0f17b4d8a" xlink:to="loc_wprt_ContractualObligationsTypeAxis_822011f8-9132-4542-a3c6-30550bbdedaa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ContractualObligationsTypeDomain_95c8cd0e-a473-46a3-bd6f-fa720fe46f51" xlink:href="wprt-20250630.xsd#wprt_ContractualObligationsTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_wprt_ContractualObligationsTypeAxis_822011f8-9132-4542-a3c6-30550bbdedaa" xlink:to="loc_wprt_ContractualObligationsTypeDomain_95c8cd0e-a473-46a3-bd6f-fa720fe46f51" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesMember_95fa5bde-d5c6-45e1-91fd-522a6205a114" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_wprt_ContractualObligationsTypeDomain_95c8cd0e-a473-46a3-bd6f-fa720fe46f51" xlink:to="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesMember_95fa5bde-d5c6-45e1-91fd-522a6205a114" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SecuredDebtMember_09fd98b7-9d52-44a7-a36e-8c01ac27c8bd" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_SecuredDebtMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_wprt_ContractualObligationsTypeDomain_95c8cd0e-a473-46a3-bd6f-fa720fe46f51" xlink:to="loc_us-gaap_SecuredDebtMember_09fd98b7-9d52-44a7-a36e-8c01ac27c8bd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_OperatingLeaseExpensesMember_abdec545-88f4-4f21-88c7-9a2ffd9ff912" xlink:href="wprt-20250630.xsd#wprt_OperatingLeaseExpensesMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_wprt_ContractualObligationsTypeDomain_95c8cd0e-a473-46a3-bd6f-fa720fe46f51" xlink:to="loc_wprt_OperatingLeaseExpensesMember_abdec545-88f4-4f21-88c7-9a2ffd9ff912" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherCommitmentsLineItems_22836eef-7eeb-4cbf-9f23-3e928803f44c" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_OtherCommitmentsLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherCommitmentsTable_3fad9584-fc47-4d48-a3f7-2ea0f17b4d8a" xlink:to="loc_us-gaap_OtherCommitmentsLineItems_22836eef-7eeb-4cbf-9f23-3e928803f44c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractualObligation_c9e8b5cd-52ee-4658-922d-06a26bf95e5b" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ContractualObligation"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherCommitmentsLineItems_22836eef-7eeb-4cbf-9f23-3e928803f44c" xlink:to="loc_us-gaap_ContractualObligation_c9e8b5cd-52ee-4658-922d-06a26bf95e5b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_wprt_ContractualObligationsRepaymentsTotal_b42334e0-50fe-4962-b472-c36ab31b3878" xlink:href="wprt-20250630.xsd#wprt_ContractualObligationsRepaymentsTotal"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherCommitmentsLineItems_22836eef-7eeb-4cbf-9f23-3e928803f44c" xlink:to="loc_wprt_ContractualObligationsRepaymentsTotal_b42334e0-50fe-4962-b472-c36ab31b3878" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractualObligationDueInNextTwelveMonths_bde8af46-d3b7-4e32-9aae-571491402087" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ContractualObligationDueInNextTwelveMonths"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherCommitmentsLineItems_22836eef-7eeb-4cbf-9f23-3e928803f44c" xlink:to="loc_us-gaap_ContractualObligationDueInNextTwelveMonths_bde8af46-d3b7-4e32-9aae-571491402087" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractualObligationDueInSecondAndThirdYear_3ec69408-d770-4369-9057-9d26c2058ec2" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ContractualObligationDueInSecondAndThirdYear"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherCommitmentsLineItems_22836eef-7eeb-4cbf-9f23-3e928803f44c" xlink:to="loc_us-gaap_ContractualObligationDueInSecondAndThirdYear_3ec69408-d770-4369-9057-9d26c2058ec2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractualObligationDueInFourthAndFifthYear_522ddaa6-d331-49ab-ba87-f8d0f101ca06" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ContractualObligationDueInFourthAndFifthYear"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherCommitmentsLineItems_22836eef-7eeb-4cbf-9f23-3e928803f44c" xlink:to="loc_us-gaap_ContractualObligationDueInFourthAndFifthYear_522ddaa6-d331-49ab-ba87-f8d0f101ca06" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractualObligationDueAfterFifthYear_8e4aea97-f979-4eda-89b4-8e550772f563" xlink:href="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd#us-gaap_ContractualObligationDueAfterFifthYear"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherCommitmentsLineItems_22836eef-7eeb-4cbf-9f23-3e928803f44c" xlink:to="loc_us-gaap_ContractualObligationDueAfterFifthYear_8e4aea97-f979-4eda-89b4-8e550772f563" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>9
<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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Cover Page<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2025</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>
</tr>
<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">6-K/A<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">WESTPORT FUEL SYSTEMS INC.<span></span>
</td>
</tr>
<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_AmendmentDescription', window );">Amendment Description</a></td>
<td class="text">INFORMATION CONTAINED IN THIS REPORT ON 6-K/AThis Report on Form 6-K/A (the &#8220;Amendment&#8221;) amends the Report on Form 6-K filed on August 11, 2025 (the &#8220;Original 6-K&#8221;) containing the Condensed Consolidated Interim Financial Statements of Westport Fuel Systems, Inc., (the &#8220;Company&#8221;) for the three and six months ended June 30, 2025 and 2024. The purpose of this Amendment is solely to provide the Company&#8217;s Condensed Consolidated Interim Financial Statements for the three and six months ended June 30, 2025 and 2024 formatted in Inline eXtensible Business Reporting Language (&#8220;iXBRL&#8221;) in accordance with Rule 405 of Regulation S-T and paragraph C.(6)(a)(ii) of the General Instructions to Form 6-K, attached hereto as Exhibit 99.1. Such Condensed Consolidated Interim Financial Statements were previously filed without iXBRL as Exhibit 99.2 to the Original 6-K. Except as described above, this Amendment speaks as of the original filing date of the Original 6-K and does not amend, update or restate any information set forth in the Original 6-K or reflect any events that occurred subsequent to the original filing date of the Original 6-K. The information contained in this Form 6-K, including Exhibits 99.1, is hereby incorporated by reference into the Company&#8217;s Registration Statement on Form F-3 (File No. 333-289669) and the registration statement on Form S-8, as amended (Registration No. 333-248912).<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_EntityCentralIndexKey', window );">Entity Central Index Key</a></td>
<td class="text">0001370416<span></span>
</td>
</tr>
<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">Jun. 30,  2025<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_AmendmentFlag', window );">Amendment Flag</a></td>
<td class="text">true<span></span>
</td>
</tr>
<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_CurrentFiscalYearEndDate', window );">Current Fiscal Year End Date</a></td>
<td class="text">--12-31<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_DocumentFiscalYearFocus', window );">Document Fiscal Year Focus</a></td>
<td class="text">2025<span></span>
</td>
</tr>
<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_DocumentFiscalPeriodFocus', window );">Document Fiscal Period Focus</a></td>
<td class="text">Q2<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_AmendmentDescription">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Description of changes contained within amended document.</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_AmendmentDescription</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_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_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_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_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_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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>10
<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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Condensed Consolidated Interim Balance Sheets (unaudited) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Dec. 31, 2024</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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Cash and cash equivalents (including restricted cash)</a></td>
<td class="nump">$ 6,064<span></span>
</td>
<td class="nump">$ 14,754<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 );">Accounts receivable (note 6)</a></td>
<td class="nump">16,580<span></span>
</td>
<td class="nump">18,738<span></span>
</td>
</tr>
<tr class="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 (note 7)</a></td>
<td class="nump">2,856<span></span>
</td>
<td class="nump">6,668<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_PrepaidExpenseCurrent', window );">Prepaid expenses</a></td>
<td class="nump">800<span></span>
</td>
<td class="nump">1,328<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent', window );">Current assets held for sale (note 5)</a></td>
<td class="nump">201,719<span></span>
</td>
<td class="nump">128,398<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">228,019<span></span>
</td>
<td class="nump">169,886<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermInvestments', window );">Long-term investments (note 8)</a></td>
<td class="nump">37,122<span></span>
</td>
<td class="nump">36,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_PropertyPlantAndEquipmentNet', window );">Property, plant and equipment (note 9)</a></td>
<td class="nump">4,444<span></span>
</td>
<td class="nump">3,120<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseRightOfUseAsset', window );">Operating lease right-of-use assets</a></td>
<td class="nump">1,942<span></span>
</td>
<td class="nump">823<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_OtherAssetsNoncurrent', window );">Other long-term assets</a></td>
<td class="nump">527<span></span>
</td>
<td class="nump">1,431<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent', window );">Non-current assets held for sale (note 5)</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">79,495<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_Assets', window );">Total assets</a></td>
<td class="nump">272,054<span></span>
</td>
<td class="nump">291,621<span></span>
</td>
</tr>
<tr class="ro">
<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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent', window );">Accounts payable and accrued liabilities (note 10)</a></td>
<td class="nump">17,594<span></span>
</td>
<td class="nump">19,435<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Current portion of operating lease liabilities (note 11)</a></td>
<td class="nump">633<span></span>
</td>
<td class="nump">288<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_LongTermDebtAndCapitalLeaseObligationsCurrent', window );">Current portion of long-term debt (note 12)</a></td>
<td class="nump">3,905<span></span>
</td>
<td class="nump">3,905<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProductWarrantyAccrualClassifiedCurrent', window );">Current portion of warranty liability</a></td>
<td class="nump">1,155<span></span>
</td>
<td class="nump">1,152<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_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent', window );">Current liabilities held for sale (note 5)</a></td>
<td class="nump">136,177<span></span>
</td>
<td class="nump">84,488<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">159,464<span></span>
</td>
<td class="nump">109,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_OperatingLeaseLiabilityNoncurrent', window );">Long-term operating lease liabilities (note 11)</a></td>
<td class="nump">1,332<span></span>
</td>
<td class="nump">548<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtAndCapitalLeaseObligations', window );">Long-term debt (note 12)</a></td>
<td class="nump">977<span></span>
</td>
<td class="nump">2,932<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_OtherLiabilitiesNoncurrent', window );">Other long-term liabilities</a></td>
<td class="nump">1,389<span></span>
</td>
<td class="nump">1,388<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent', window );">Long-term liabilities held for sale (note 5)</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">40,460<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">163,162<span></span>
</td>
<td class="nump">154,596<span></span>
</td>
</tr>
<tr class="ro">
<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>Share capital (note 13):</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_CommonStockValue', window );">Unlimited common and preferred shares, no par value 17,351,005 (2024 - 17,282,934) common shares issued and outstanding</a></td>
<td class="nump">1,246,643<span></span>
</td>
<td class="nump">1,245,805<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_wprt_OtherEquityInstrument', window );">Other equity instruments</a></td>
<td class="nump">9,027<span></span>
</td>
<td class="nump">9,472<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">11,516<span></span>
</td>
<td class="nump">11,516<span></span>
</td>
</tr>
<tr class="ro">
<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">(1,133,070)<span></span>
</td>
<td class="num">(1,096,275)<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_AccumulatedOtherComprehensiveIncomeLossNetOfTax', window );">Accumulated other comprehensive loss</a></td>
<td class="num">(25,224)<span></span>
</td>
<td class="num">(33,493)<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 shareholders' equity</a></td>
<td class="nump">108,892<span></span>
</td>
<td class="nump">137,025<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 shareholders' equity</a></td>
<td class="nump">272,054<span></span>
</td>
<td class="nump">291,621<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingencies', window );">Commitments and contingencies (note 15)</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <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_AccountsPayableAndAccruedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 obligations incurred through that date and due within one year (or the operating cycle, if longer), including liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received, taxes, interest, rent and utilities, accrued salaries and bonuses, payroll taxes and fringe benefits.</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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-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;">us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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/2009/role/commonPracticeRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481990/310-10-45-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;">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_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>Amount, after tax, of accumulated increase (decrease) in equity from transaction and other event and circumstance from nonowner source.</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> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-14A<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-11<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 815<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480870/815-30-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(23)(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-14<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-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;">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>Amount of asset recognized for present right to economic benefit.</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> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478671/942-235-S50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 64<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481620/480-10-55-64<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 944<br> -SubTopic 605<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477548/944-605-55-14<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 944<br> -SubTopic 605<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477548/944-605-55-11<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 10: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 49<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-49<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 13: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-25<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 19: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 20: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-12<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(12))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 25: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 26: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 35: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 37: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(11))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-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;">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>Amount of asset recognized for present right to economic benefit, 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> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-25<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 12: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 13: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 22: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 assets attributable to disposal group held for sale or disposed of, expected to be disposed of 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> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -SubTopic 20<br> -Topic 205<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-10<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5C<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5C<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482130/360-10-45-9<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5B<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-3<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-11<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 equivalent, and cash and cash equivalent restricted to withdrawal or usage; attributable to continuing operation. Cash includes, but is not limited to, currency on hand, demand deposit with financial institution, and account with general characteristic of demand deposit. Cash equivalent includes, but is not limited to, short-term, highly liquid investment that is both readily convertible to known amount of cash and so near maturity that it presents insignificant risk of change in value because of change in interest rate.</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> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-8<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-24<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_CommitmentsAndContingencies">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Represents the caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur.</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> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(17))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(15))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-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;">us-gaap_CommitmentsAndContingencies</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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/disclosureRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479887/480-10-S45-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (01)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480244/480-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-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;">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_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 assets attributable to disposal group held for sale or disposed of, expected to be disposed of after 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> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -SubTopic 20<br> -Topic 205<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-10<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -SubTopic 10<br> -Topic 360<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482130/360-10-45-11<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5C<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5C<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5B<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-3<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-11<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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_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/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-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;">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>Amount of liability recognized for present obligation requiring transfer or otherwise providing economic benefit to others.</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> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -SubTopic 10<br> -Topic 210<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(24))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 64<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481620/480-10-55-64<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 10: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(26))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 11: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 12: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(21))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-25<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 18: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-12<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(14))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 21: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 30: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br><br>Reference 31: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br><br>Reference 32: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 944<br> -SubTopic 605<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477548/944-605-55-14<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 944<br> -SubTopic 605<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477548/944-605-55-11<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 10: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(32))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-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;">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/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(21))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-25<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 10: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-5<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 13: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 22: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br><br>Reference 23: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 liabilities attributable to disposal group held for sale or disposed of, expected to be disposed of 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> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -SubTopic 20<br> -Topic 205<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-10<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5C<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5C<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482130/360-10-45-9<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5B<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-3<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-11<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 liabilities attributable to disposal group held for sale or disposed of, expected to be disposed of beyond 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> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -SubTopic 20<br> -Topic 205<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-10<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -SubTopic 10<br> -Topic 360<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482130/360-10-45-11<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5C<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5C<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5B<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-3<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-11<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_LongTermDebtAndCapitalLeaseObligations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 long-term debt and lease obligation, classified as noncurrent.</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> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -SubTopic 10<br> -Topic 210<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(16)(a)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-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;">us-gaap_LongTermDebtAndCapitalLeaseObligations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_LongTermDebtAndCapitalLeaseObligationsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 long-term debt and lease obligation, classified as current.</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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-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;">us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_LongTermInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 total amount of investments that are intended to be held for an extended period of time (longer than one operating cycle).</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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(12))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-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;">us-gaap_LongTermInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-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;">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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-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;">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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-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;">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_OtherAssetsNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 noncurrent 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://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(17))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-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;">us-gaap_OtherAssetsNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_OtherLiabilitiesNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 classified as other, due after 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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(24))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-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;">us-gaap_OtherLiabilitiesNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_PrepaidExpenseCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 within a future period of 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/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 340<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 05<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482955/340-10-05-5<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 340<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483032/340-10-45-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;">us-gaap_PrepaidExpenseCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_ProductWarrantyAccrualClassifiedCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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. For classified balance sheets, represents 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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-8<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(5)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProductWarrantyAccrualClassifiedCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_PropertyPlantAndEquipmentNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 360<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-7A<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 360<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478451/942-360-50-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;">us-gaap_PropertyPlantAndEquipmentNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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>Amount of accumulated undistributed earnings (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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480990/946-20-50-11<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(23)(a)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(17))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-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;">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_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>Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest.</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> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(31))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-12<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-2<br><br>Reference 11: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 14: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 15: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 16: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 4.E)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480418/310-10-S99-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;">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_wprt_OtherEquityInstrument">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Represents the value assigned to issued Units and the amounts accrued are recorded as other equity instruments. As Units are exercised and the underlying shares are issued from the treasury of the Company, the value is reclassified to share capital.</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;">wprt_OtherEquityInstrument</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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>11
<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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Condensed Consolidated Interim Balance Sheets (unaudited) (Parenthetical) - shares<br></strong></div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Dec. 31, 2024</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_StatementOfFinancialPositionAbstract', window );"><strong>Statement of Financial Position [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesIssued', window );">Common shares, shares issued (in shares)</a></td>
<td class="nump">17,351,005<span></span>
</td>
<td class="nump">17,282,934<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 shares, shares outstanding (in shares)</a></td>
<td class="nump">17,351,005<span></span>
</td>
<td class="nump">17,282,934<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_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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-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;">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> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-2<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_StatementOfFinancialPositionAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_StatementOfFinancialPositionAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>12
<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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Condensed Consolidated Interim Statements of Operations and Comprehensive Income (Loss) (unaudited) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Jun. 30, 2024</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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">$ 12,498<span></span>
</td>
<td class="nump">$ 14,109<span></span>
</td>
<td class="nump">$ 19,821<span></span>
</td>
<td class="nump">$ 28,537<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 revenue</a></td>
<td class="nump">11,656<span></span>
</td>
<td class="nump">11,750<span></span>
</td>
<td class="nump">17,444<span></span>
</td>
<td class="nump">26,720<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 profit</a></td>
<td class="nump">842<span></span>
</td>
<td class="nump">2,359<span></span>
</td>
<td class="nump">2,377<span></span>
</td>
<td class="nump">1,817<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_CostOfRevenueAbstract', 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 );">Research and development</a></td>
<td class="nump">1,574<span></span>
</td>
<td class="nump">3,460<span></span>
</td>
<td class="nump">2,867<span></span>
</td>
<td class="nump">7,809<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_GeneralAndAdministrativeExpense', window );">General and administrative</a></td>
<td class="nump">4,106<span></span>
</td>
<td class="nump">5,720<span></span>
</td>
<td class="nump">6,778<span></span>
</td>
<td class="nump">12,915<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SellingAndMarketingExpense', window );">Sales and marketing</a></td>
<td class="nump">290<span></span>
</td>
<td class="nump">962<span></span>
</td>
<td class="nump">733<span></span>
</td>
<td class="nump">2,083<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_ForeignCurrencyTransactionGainLossBeforeTax', window );">Foreign exchange (gain) loss</a></td>
<td class="num">(4,224)<span></span>
</td>
<td class="num">(141)<span></span>
</td>
<td class="num">(5,427)<span></span>
</td>
<td class="nump">1,795<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DepreciationAmortizationAndAccretionNet', window );">Depreciation and amortization</a></td>
<td class="nump">106<span></span>
</td>
<td class="nump">98<span></span>
</td>
<td class="nump">214<span></span>
</td>
<td class="nump">456<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_CostsAndExpenses', window );">Operating expenses</a></td>
<td class="nump">1,852<span></span>
</td>
<td class="nump">10,099<span></span>
</td>
<td class="nump">5,165<span></span>
</td>
<td class="nump">25,058<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_OperatingIncomeLoss', window );">Loss from continuing operations</a></td>
<td class="num">(1,010)<span></span>
</td>
<td class="num">(7,740)<span></span>
</td>
<td class="num">(2,788)<span></span>
</td>
<td class="num">(23,241)<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_IncomeLossFromEquityMethodInvestments', window );">Loss from investments accounted for by the equity method</a></td>
<td class="num">(3,686)<span></span>
</td>
<td class="num">(1,102)<span></span>
</td>
<td class="num">(7,570)<span></span>
</td>
<td class="num">(1,102)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeconsolidationGainOrLossAmount', window );">Gain on deconsolidation</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">13,266<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">13,266<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_InterestExpenseDebt', window );">Interest on long-term debt</a></td>
<td class="num">(166)<span></span>
</td>
<td class="num">(288)<span></span>
</td>
<td class="num">(358)<span></span>
</td>
<td class="num">(603)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestIncomeExpenseNonoperatingNet', window );">Interest and other income (loss), net of bank charges</a></td>
<td class="num">(147)<span></span>
</td>
<td class="nump">95<span></span>
</td>
<td class="nump">502<span></span>
</td>
<td class="nump">21<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_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Income (loss) before income taxes</a></td>
<td class="num">(5,009)<span></span>
</td>
<td class="nump">4,231<span></span>
</td>
<td class="num">(10,214)<span></span>
</td>
<td class="num">(11,659)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Income tax expense</a></td>
<td class="nump">44<span></span>
</td>
<td class="nump">85<span></span>
</td>
<td class="nump">134<span></span>
</td>
<td class="nump">216<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_IncomeLossFromContinuingOperations', window );">Net income (loss) from continuing operations</a></td>
<td class="num">(5,053)<span></span>
</td>
<td class="nump">4,146<span></span>
</td>
<td class="num">(10,348)<span></span>
</td>
<td class="num">(11,875)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity', window );">Net income (loss) from discontinued operations (note 5)</a></td>
<td class="num">(29,291)<span></span>
</td>
<td class="nump">1,671<span></span>
</td>
<td class="num">(26,447)<span></span>
</td>
<td class="nump">4,044<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 income (loss) for the period</a></td>
<td class="num">(34,344)<span></span>
</td>
<td class="nump">5,817<span></span>
</td>
<td class="num">(36,795)<span></span>
</td>
<td class="num">(7,831)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract', window );"><strong>Other comprehensive income (loss):</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_CumulativeTranslationAdjustmentNetOfTaxPeriodIncreaseDecrease', window );">Cumulative translation adjustment</a></td>
<td class="nump">6,921<span></span>
</td>
<td class="num">(1,212)<span></span>
</td>
<td class="nump">10,562<span></span>
</td>
<td class="num">(1,642)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OciEquityMethodInvestmentAfterTax', window );">Ownership share of equity method investments' other comprehensive loss</a></td>
<td class="num">(1,464)<span></span>
</td>
<td class="num">(83)<span></span>
</td>
<td class="num">(2,293)<span></span>
</td>
<td class="num">(83)<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_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent', window );">Other comprehensive income (loss)</a></td>
<td class="nump">5,457<span></span>
</td>
<td class="num">(1,295)<span></span>
</td>
<td class="nump">8,269<span></span>
</td>
<td class="num">(1,725)<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_ComprehensiveIncomeNetOfTax', window );">Comprehensive income (loss)</a></td>
<td class="num">$ (28,887)<span></span>
</td>
<td class="nump">$ 4,522<span></span>
</td>
<td class="num">$ (28,526)<span></span>
</td>
<td class="num">$ (9,556)<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_EarningsPerShareBasicAbstract', window );"><strong>Net income (loss) per share:</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_IncomeLossFromContinuingOperationsPerBasicShare', window );">From continuing operations - basic (in dollars per share)</a></td>
<td class="num">$ (0.29)<span></span>
</td>
<td class="nump">$ 0.24<span></span>
</td>
<td class="num">$ (0.60)<span></span>
</td>
<td class="num">$ (0.69)<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_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare', window );">From discontinued operations - basic (in dollars per share)</a></td>
<td class="num">(1.69)<span></span>
</td>
<td class="nump">0.10<span></span>
</td>
<td class="num">(1.53)<span></span>
</td>
<td class="nump">0.23<span></span>
</td>
</tr>
<tr class="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 );">From continuing operations - diluted (in dollars per share)</a></td>
<td class="num">(0.29)<span></span>
</td>
<td class="nump">0.24<span></span>
</td>
<td class="num">(0.60)<span></span>
</td>
<td class="num">(0.69)<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_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare', window );">From discontinued operations - diluted (in dollars per share)</a></td>
<td class="num">(1.69)<span></span>
</td>
<td class="nump">0.10<span></span>
</td>
<td class="num">(1.53)<span></span>
</td>
<td class="nump">0.23<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_EarningsPerShareBasic', window );">Net income (loss) per share - basic (in dollars per share)</a></td>
<td class="num">(1.98)<span></span>
</td>
<td class="nump">0.34<span></span>
</td>
<td class="num">(2.12)<span></span>
</td>
<td class="num">(0.45)<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_EarningsPerShareDiluted', window );">Net income (loss) per share - diluted (in dollars per share)</a></td>
<td class="num">$ (1.98)<span></span>
</td>
<td class="nump">$ 0.34<span></span>
</td>
<td class="num">$ (2.12)<span></span>
</td>
<td class="num">$ (0.45)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract', window );"><strong>Weighted average common shares 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="re">
<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 (in shares)</a></td>
<td class="nump">17,338,288<span></span>
</td>
<td class="nump">17,239,460<span></span>
</td>
<td class="nump">17,330,527<span></span>
</td>
<td class="nump">17,230,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_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Diluted (in shares)</a></td>
<td class="nump">17,338,288<span></span>
</td>
<td class="nump">17,488,070<span></span>
</td>
<td class="nump">17,330,527<span></span>
</td>
<td class="nump">17,230,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_ComprehensiveIncomeNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(24))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(26))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1A<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1B<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ComprehensiveIncomeNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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/exampleRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4A<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4A<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-11<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-4<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(2)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(2)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 924<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479941/924-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476148/220-40-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_CostOfRevenueAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CostOfRevenueAbstract</td>
</tr>
<tr>
<td style="padding-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_CostsAndExpenses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 costs of sales and operating expenses for 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> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-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;">us-gaap_CostsAndExpenses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_CumulativeTranslationAdjustmentNetOfTaxPeriodIncreaseDecrease">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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) in cumulative translation adjustment before transfers included in determining net 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> -Topic 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 20<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481694/830-30-45-20<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CumulativeTranslationAdjustmentNetOfTaxPeriodIncreaseDecrease</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DeconsolidationGainOrLossAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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) from deconsolidation of subsidiary and derecognition of group of assets constituting transfer of business or nonprofit activity, excluding conveyance of oil and gas mineral rights and transfer of good or service in contract with customer.</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> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-1B<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 21<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476148/220-40-50-21<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeconsolidationGainOrLossAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DepreciationAmortizationAndAccretionNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 net amount of depreciation, amortization, and accretion recognized during an accounting period. As a noncash item, the net amount is added back to net income when calculating cash provided by or used in operations using the indirect 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> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DepreciationAmortizationAndAccretionNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_EarningsPerShareBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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) for the period 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> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 105<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 9<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479343/105-10-65-9<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 17<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480336/718-10-65-17<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 52<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482635/260-10-55-52<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-3<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482635/260-10-55-15<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-7<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-2<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-10<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-7<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (f)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481538/470-20-65-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareBasic</td>
</tr>
<tr>
<td style="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_EarningsPerShareBasicAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_EarningsPerShareBasicAbstract</td>
</tr>
<tr>
<td style="padding-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_EarningsPerShareDiluted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.</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> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 105<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 9<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479343/105-10-65-9<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 17<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480336/718-10-65-17<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 52<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482635/260-10-55-52<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-3<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482635/260-10-55-15<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-7<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-2<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-7<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (f)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481538/470-20-65-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareDiluted</td>
</tr>
<tr>
<td style="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_ForeignCurrencyTransactionGainLossBeforeTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 tax, of realized and unrealized gain (loss) from foreign currency transaction.</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> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482014/830-20-35-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481956/830-20-45-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481926/830-20-50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481839/830-10-45-17<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (o)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476148/220-40-50-22<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ForeignCurrencyTransactionGainLossBeforeTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_GeneralAndAdministrativeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 of expenses of managing and administering the affairs of an entity, including affiliates of the reporting entity, which are not directly or indirectly associated with the manufacture, sale or creation of a product or product line.</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> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(2)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-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;">us-gaap_GeneralAndAdministrativeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 10: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 11: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 12: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 16: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 25: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-31<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_IncomeLossFromContinuingOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 tax of income (loss) from continuing operations 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://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 105<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 9<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479343/105-10-65-9<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(13))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-3<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 11: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 12: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 18<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-18<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.</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> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-4<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 21<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-21<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-14<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478671/942-235-S50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-1<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 11: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 12: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(11))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 14: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-31<br><br>Reference 15: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(10))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 16: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(15))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-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;">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 105<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 9<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479343/105-10-65-9<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(13))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-3<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-2<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 16: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-7<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (f)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481538/470-20-65-4<br><br>Reference 21: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-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;">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> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 105<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 9<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479343/105-10-65-9<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(13))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-3<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-2<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 16: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 tax of income (loss) from a discontinued operation attributable to the parent. Includes, but is not limited to, the income (loss) from operations during the phase-out period, gain (loss) on disposal, gain (loss) for reversal of write-down (write-down) to fair value, less cost to sell, and adjustments to a prior period gain (loss) on disposal.</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> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 19<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-19<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-3A<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5B<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5C<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5C<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-3B<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-4<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-1<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 basic share amount, after tax, of income (loss) from the day-to-day business activities of the discontinued operation and gain (loss) from the disposal of the discontinued operation.</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> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-7<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(14))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-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;">us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare</td>
</tr>
<tr>
<td style="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_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 diluted share amount, after tax, of income (loss) from the day-to-day business activities of the discontinued operation and gain (loss) from the disposal of the discontinued operation.</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> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-7<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5<br> -Subparagraph (SAB Topic 5.E)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479836/810-10-S99-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare</td>
</tr>
<tr>
<td style="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_IncomeLossFromEquityMethodInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 (loss) for proportionate share of equity method investee's income (loss).</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> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(10))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481664/323-10-45-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(12))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(13)(f))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-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;">us-gaap_IncomeLossFromEquityMethodInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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_IncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to 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/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-4<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 21<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-21<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-14<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 231<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482663/740-10-55-231<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-9<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479360/740-10-S99-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-8<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-10<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -SubTopic 20<br> -Topic 740<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482659/740-20-45-2<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -SubTopic 10<br> -Topic 235<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-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;">us-gaap_IncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_InterestExpenseDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 for 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> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69E<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481568/470-20-55-69E<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69F<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481568/470-20-55-69F<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1F<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1F<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479105/946-220-45-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InterestExpenseDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_InterestIncomeExpenseNonoperatingNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 interest income (expense) classified as nonoperating.</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> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4A<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4A<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InterestIncomeExpenseNonoperatingNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-4<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 21<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-21<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-14<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(k)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479857/480-10-S50-3<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479887/480-10-S45-3<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3A<br> -Subparagraph (24)(d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480244/480-10-S99-3A<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 105<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 9<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479343/105-10-65-9<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 17<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480336/718-10-65-17<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-9<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 19: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-6<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-3<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-8<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479105/946-220-45-7<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 34: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 38: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 39: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 40: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 41: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 42: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 43: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 44: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 45: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 46: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1A<br><br>Reference 47: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1B<br><br>Reference 48: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (f)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481538/470-20-65-4<br><br>Reference 49: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-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;">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_OciEquityMethodInvestmentAfterTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 tax, of other comprehensive income (loss) (OCI) for proportionate share of equity method investee's OCI.</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> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 18<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481725/323-10-35-18<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OciEquityMethodInvestmentAfterTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-4<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-14<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-31<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract</td>
</tr>
<tr>
<td style="padding-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_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 tax of other comprehensive income (loss) attributable to parent entity.</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> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 19<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-19<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 20<br> -SubTopic 10<br> -Topic 810<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-20<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (c)(3)<br> -SubTopic 10<br> -Topic 810<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-1A<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1B<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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>Amount of expense for research and development. Includes, but is not limited to, cost for computer software product to be sold, leased, or otherwise marketed and writeoff of research and development assets acquired in transaction other than business combination or joint venture formation or both. Excludes write-down of intangible asset acquired in business combination or from joint venture formation or both, used in research and development 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> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 18<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-18<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-14<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 985<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481283/985-20-50-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 730<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482916/730-10-50-1<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 912<br> -SubTopic 730<br> -Name Accounting Standards Codification<br> -Section 25<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479532/912-730-25-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;">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_RevenueFromContractWithCustomerExcludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.</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> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-4<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-14<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-41<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 42<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-42<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-7<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 924<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479941/924-10-S99-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-5<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-40<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_SellingAndMarketingExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 amount of expenses directly related to the marketing or selling of products or services.</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_SellingAndMarketingExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 16<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-16<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_WeightedAverageNumberOfSharesOutstandingAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_WeightedAverageNumberOfSharesOutstandingAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<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> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-10<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>13
<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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Condensed Consolidated Interim Statements of Shareholders' Equity (unaudited) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Total</div></th>
<th class="th"><div>Common stock</div></th>
<th class="th"><div>Other equity instruments</div></th>
<th class="th"><div>Additional paid in capital</div></th>
<th class="th"><div>Accumulated deficit</div></th>
<th class="th"><div>Accumulated other comprehensive loss</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_CommonStockSharesOutstanding', window );">Balance (in shares) at Dec. 31, 2023</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">17,174,502<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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 );">Balance at Dec. 31, 2023</a></td>
<td class="nump">$ 160,448<span></span>
</td>
<td class="nump">$ 1,244,539<span></span>
</td>
<td class="nump">$ 9,672<span></span>
</td>
<td class="nump">$ 11,516<span></span>
</td>
<td class="num">$ (1,074,434)<span></span>
</td>
<td class="num">$ (30,845)<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_StockIssuedDuringPeriodSharesShareBasedCompensation', window );">Issuance of common shares on exercise of share units (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">83,862<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_StockIssuedDuringPeriodValueShareBasedCompensation', window );">Issuance of common shares on exercise of share units</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">$ 1,112<span></span>
</td>
<td class="num">(1,112)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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">633<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">633<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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 income (loss) for the period</a></td>
<td class="num">(7,831)<span></span>
</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">(7,831)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent', window );">Other comprehensive income (loss)</a></td>
<td class="num">(1,725)<span></span>
</td>
<td class="text">&#160;<span></span>
</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,725)<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 );">Balance (in shares) at Jun. 30, 2024</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">17,258,364<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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 );">Balance at Jun. 30, 2024</a></td>
<td class="nump">151,525<span></span>
</td>
<td class="nump">$ 1,245,651<span></span>
</td>
<td class="nump">9,193<span></span>
</td>
<td class="nump">11,516<span></span>
</td>
<td class="num">(1,082,265)<span></span>
</td>
<td class="num">(32,570)<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 );">Balance (in shares) at Mar. 31, 2024</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">17,223,154<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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 );">Balance at Mar. 31, 2024</a></td>
<td class="nump">146,701<span></span>
</td>
<td class="nump">$ 1,245,408<span></span>
</td>
<td class="nump">9,134<span></span>
</td>
<td class="nump">11,516<span></span>
</td>
<td class="num">(1,088,082)<span></span>
</td>
<td class="num">(31,275)<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_StockIssuedDuringPeriodSharesShareBasedCompensation', window );">Issuance of common shares on exercise of share units (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">35,210<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_StockIssuedDuringPeriodValueShareBasedCompensation', window );">Issuance of common shares on exercise of share units</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">$ 243<span></span>
</td>
<td class="num">(243)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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">302<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">302<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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 income (loss) for the period</a></td>
<td class="nump">5,817<span></span>
</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,817<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent', window );">Other comprehensive income (loss)</a></td>
<td class="num">(1,295)<span></span>
</td>
<td class="text">&#160;<span></span>
</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,295)<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 );">Balance (in shares) at Jun. 30, 2024</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">17,258,364<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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 );">Balance at Jun. 30, 2024</a></td>
<td class="nump">$ 151,525<span></span>
</td>
<td class="nump">$ 1,245,651<span></span>
</td>
<td class="nump">9,193<span></span>
</td>
<td class="nump">11,516<span></span>
</td>
<td class="num">(1,082,265)<span></span>
</td>
<td class="num">(32,570)<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 );">Balance (in shares) at Dec. 31, 2024</a></td>
<td class="nump">17,282,934<span></span>
</td>
<td class="nump">17,282,934<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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 );">Balance at Dec. 31, 2024</a></td>
<td class="nump">$ 137,025<span></span>
</td>
<td class="nump">$ 1,245,805<span></span>
</td>
<td class="nump">9,472<span></span>
</td>
<td class="nump">11,516<span></span>
</td>
<td class="num">(1,096,275)<span></span>
</td>
<td class="num">(33,493)<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_StockIssuedDuringPeriodSharesShareBasedCompensation', window );">Issuance of common shares on exercise of share units (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">68,071<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_StockIssuedDuringPeriodValueShareBasedCompensation', window );">Issuance of common shares on exercise of share units</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">$ 838<span></span>
</td>
<td class="num">(838)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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">393<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">393<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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 income (loss) for the period</a></td>
<td class="num">(36,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="num">(36,795)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent', window );">Other comprehensive income (loss)</a></td>
<td class="nump">$ 8,269<span></span>
</td>
<td class="text">&#160;<span></span>
</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">8,269<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 );">Balance (in shares) at Jun. 30, 2025</a></td>
<td class="nump">17,351,005<span></span>
</td>
<td class="nump">17,351,005<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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 );">Balance at Jun. 30, 2025</a></td>
<td class="nump">$ 108,892<span></span>
</td>
<td class="nump">$ 1,246,643<span></span>
</td>
<td class="nump">9,027<span></span>
</td>
<td class="nump">11,516<span></span>
</td>
<td class="num">(1,133,070)<span></span>
</td>
<td class="num">(25,224)<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 );">Balance (in shares) at Mar. 31, 2025</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">17,326,732<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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 );">Balance at Mar. 31, 2025</a></td>
<td class="nump">137,598<span></span>
</td>
<td class="nump">$ 1,246,408<span></span>
</td>
<td class="nump">9,081<span></span>
</td>
<td class="nump">11,516<span></span>
</td>
<td class="num">(1,098,726)<span></span>
</td>
<td class="num">(30,681)<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_StockIssuedDuringPeriodSharesShareBasedCompensation', window );">Issuance of common shares on exercise of share units (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">24,273<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_StockIssuedDuringPeriodValueShareBasedCompensation', window );">Issuance of common shares on exercise of share units</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">$ 235<span></span>
</td>
<td class="num">(235)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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">181<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">181<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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 income (loss) for the period</a></td>
<td class="num">(34,344)<span></span>
</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">(34,344)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent', window );">Other comprehensive income (loss)</a></td>
<td class="nump">$ 5,457<span></span>
</td>
<td class="text">&#160;<span></span>
</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,457<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 );">Balance (in shares) at Jun. 30, 2025</a></td>
<td class="nump">17,351,005<span></span>
</td>
<td class="nump">17,351,005<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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 );">Balance at Jun. 30, 2025</a></td>
<td class="nump">$ 108,892<span></span>
</td>
<td class="nump">$ 1,246,643<span></span>
</td>
<td class="nump">$ 9,027<span></span>
</td>
<td class="nump">$ 11,516<span></span>
</td>
<td class="num">$ (1,133,070)<span></span>
</td>
<td class="num">$ (25,224)<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_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://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480483/718-10-35-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;">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_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> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-2<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-4<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 21<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-21<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-14<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(k)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479857/480-10-S50-3<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479887/480-10-S45-3<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3A<br> -Subparagraph (24)(d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480244/480-10-S99-3A<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 105<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 9<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479343/105-10-65-9<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 17<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480336/718-10-65-17<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-9<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 19: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-6<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-3<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-8<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479105/946-220-45-7<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 34: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 38: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 39: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 40: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 41: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 42: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 43: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 44: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 45: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 46: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1A<br><br>Reference 47: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1B<br><br>Reference 48: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (f)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481538/470-20-65-4<br><br>Reference 49: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-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;">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_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 tax of other comprehensive income (loss) attributable to parent entity.</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> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 19<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-19<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 20<br> -SubTopic 10<br> -Topic 810<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-20<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (c)(3)<br> -SubTopic 10<br> -Topic 810<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-1A<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1B<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_StockIssuedDuringPeriodSharesShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, after forfeiture, of shares or units issued under share-based payment arrangement. Excludes shares or units issued under employee stock ownership plan (ESOP).</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> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-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;">us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-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_StockIssuedDuringPeriodValueShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, after forfeiture, of shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP).</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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-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;">us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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>Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest.</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> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(31))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-12<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-2<br><br>Reference 11: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 14: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 15: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 16: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 4.E)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480418/310-10-S99-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;">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>14
<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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Condensed Consolidated Interim Statements of Cash Flows (unaudited) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Jun. 30, 2024</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_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract', window );"><strong>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_IncomeLossFromContinuingOperations', window );">Net income (loss) from continuing operations</a></td>
<td class="num">$ (5,053)<span></span>
</td>
<td class="nump">$ 4,146<span></span>
</td>
<td class="num">$ (10,348)<span></span>
</td>
<td class="num">$ (11,875)<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_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract', window );"><strong>Adjustments to reconcile net income (loss) to net cash used in continuing 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_DepreciationDepletionAndAmortization', window );">Depreciation and amortization</a></td>
<td class="nump">219<span></span>
</td>
<td class="nump">169<span></span>
</td>
<td class="nump">397<span></span>
</td>
<td class="nump">1,867<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 expense</a></td>
<td class="nump">126<span></span>
</td>
<td class="nump">222<span></span>
</td>
<td class="nump">304<span></span>
</td>
<td class="nump">471<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax', window );">Unrealized foreign exchange loss</a></td>
<td class="num">(4,224)<span></span>
</td>
<td class="num">(141)<span></span>
</td>
<td class="num">(5,427)<span></span>
</td>
<td class="nump">1,795<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_DeferredIncomeTaxExpenseBenefit', window );">Deferred income tax (recovery)</a></td>
<td class="num">(6)<span></span>
</td>
<td class="nump">9<span></span>
</td>
<td class="num">(9)<span></span>
</td>
<td class="nump">20<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromEquityMethodInvestments', window );">Loss from investments accounted for by the equity method</a></td>
<td class="nump">3,686<span></span>
</td>
<td class="nump">1,102<span></span>
</td>
<td class="nump">7,570<span></span>
</td>
<td class="nump">1,102<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_InterestExpenseLongTermDebt', window );">Interest on long-term debt</a></td>
<td class="nump">23<span></span>
</td>
<td class="nump">12<span></span>
</td>
<td class="nump">45<span></span>
</td>
<td class="nump">34<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryWriteDown', window );">Change in inventory write-downs</a></td>
<td class="nump">140<span></span>
</td>
<td class="nump">307<span></span>
</td>
<td class="nump">110<span></span>
</td>
<td class="nump">503<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_DeconsolidationGainOrLossAmount', window );">Gain on deconsolidation</a></td>
<td class="nump">0<span></span>
</td>
<td class="num">(13,266)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(13,266)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOperatingCapital', window );">Changes in operating assets and liabilities</a></td>
<td class="num">(533)<span></span>
</td>
<td class="nump">8,964<span></span>
</td>
<td class="num">(6,869)<span></span>
</td>
<td class="nump">17,141<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_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations', window );">Net cash provided by (used in) operating activities of continuing operations</a></td>
<td class="num">(5,622)<span></span>
</td>
<td class="nump">1,524<span></span>
</td>
<td class="num">(14,227)<span></span>
</td>
<td class="num">(2,208)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations', window );">Net cash provided by (used in) operating activities of discontinued operations</a></td>
<td class="num">(582)<span></span>
</td>
<td class="num">(25)<span></span>
</td>
<td class="nump">3,125<span></span>
</td>
<td class="nump">3,849<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_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract', window );"><strong>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 );">Purchase of property, plant and equipment</a></td>
<td class="num">(822)<span></span>
</td>
<td class="num">(1,262)<span></span>
</td>
<td class="num">(1,395)<span></span>
</td>
<td class="num">(2,006)<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_ProceedsFromSaleMaturityAndCollectionsOfInvestments', window );">Proceeds from sale of investments</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">18,888<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">18,888<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_wprt_ProceedsFromCollectionOfHoldbackReceivable', window );">Proceeds from holdback receivable (note 6)</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">10,450<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_PaymentsToAcquireEquityMethodInvestments', window );">Capital contributions to investments accounted for by the equity method</a></td>
<td class="num">(4,185)<span></span>
</td>
<td class="num">(9,900)<span></span>
</td>
<td class="num">(8,871)<span></span>
</td>
<td class="num">(9,900)<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_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations', window );">Net cash provided by (used in) investing activities of continuing operations</a></td>
<td class="num">(5,007)<span></span>
</td>
<td class="nump">7,726<span></span>
</td>
<td class="nump">184<span></span>
</td>
<td class="nump">6,982<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_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations', window );">Net cash used in investing activities of discontinued operations</a></td>
<td class="num">(460)<span></span>
</td>
<td class="num">(1,902)<span></span>
</td>
<td class="num">(2,947)<span></span>
</td>
<td class="num">(5,916)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract', window );"><strong>Financing 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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RepaymentsOfLongTermLinesOfCredit', window );">Repayments of operating lines of credit and long-term facilities</a></td>
<td class="num">(1,000)<span></span>
</td>
<td class="num">(13,700)<span></span>
</td>
<td class="num">(2,000)<span></span>
</td>
<td class="num">(29,043)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromLinesOfCredit', window );">Drawings on operating lines of credit and long-term facilities</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">7,504<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">15,550<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_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations', window );">Net cash used in financing activities of continuing operations</a></td>
<td class="num">(1,000)<span></span>
</td>
<td class="num">(6,196)<span></span>
</td>
<td class="num">(2,000)<span></span>
</td>
<td class="num">(13,493)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashProvidedByUsedInFinancingActivitiesDiscontinuedOperations', window );">Net cash used in financing activities of discontinued operations</a></td>
<td class="num">(3,176)<span></span>
</td>
<td class="num">(2,704)<span></span>
</td>
<td class="num">(6,094)<span></span>
</td>
<td class="num">(1,248)<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_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Effect of foreign exchange on cash and cash equivalents</a></td>
<td class="nump">4,593<span></span>
</td>
<td class="num">(803)<span></span>
</td>
<td class="nump">5,696<span></span>
</td>
<td class="num">(1,297)<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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect', window );">Net decrease in cash and cash equivalents</a></td>
<td class="num">(11,254)<span></span>
</td>
<td class="num">(2,380)<span></span>
</td>
<td class="num">(16,263)<span></span>
</td>
<td class="num">(13,331)<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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations', window );">Cash and cash equivalents, beginning of period (including restricted cash)</a></td>
<td class="nump">32,637<span></span>
</td>
<td class="nump">43,902<span></span>
</td>
<td class="nump">37,646<span></span>
</td>
<td class="nump">54,853<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations', window );">Cash and cash equivalents, end of period (including restricted cash)</a></td>
<td class="nump">21,383<span></span>
</td>
<td class="nump">41,522<span></span>
</td>
<td class="nump">21,383<span></span>
</td>
<td class="nump">41,522<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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsDisposalGroupIncludingDiscontinuedOperations', window );">Less: cash and cash equivalents from discontinued operations, end of period (including restricted cash)</a></td>
<td class="nump">15,319<span></span>
</td>
<td class="nump">28,048<span></span>
</td>
<td class="nump">15,319<span></span>
</td>
<td class="nump">28,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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Cash and cash equivalents from continuing operations, end of period (including restricted cash)</a></td>
<td class="nump">6,064<span></span>
</td>
<td class="nump">13,474<span></span>
</td>
<td class="nump">6,064<span></span>
</td>
<td class="nump">13,474<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_SupplementalCashFlowInformationAbstract', window );"><strong>Supplementary information</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_InterestPaidNet', window );">Interest paid</a></td>
<td class="nump">536<span></span>
</td>
<td class="nump">755<span></span>
</td>
<td class="nump">1,182<span></span>
</td>
<td class="nump">1,712<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_IncomeTaxesPaidNet', window );">Taxes paid, net of refunds</a></td>
<td class="nump">1,050<span></span>
</td>
<td class="nump">17<span></span>
</td>
<td class="nump">1,406<span></span>
</td>
<td class="nump">549<span></span>
</td>
</tr>
<tr class="ro">
<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:</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_IncreaseDecreaseInAccountsReceivable', window );">Accounts receivable</a></td>
<td class="num">(8,160)<span></span>
</td>
<td class="num">(605)<span></span>
</td>
<td class="num">(8,324)<span></span>
</td>
<td class="nump">16,663<span></span>
</td>
</tr>
<tr class="ro">
<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">5,879<span></span>
</td>
<td class="nump">5,679<span></span>
</td>
<td class="nump">3,770<span></span>
</td>
<td class="nump">5,951<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_IncreaseDecreaseInPrepaidExpense', window );">Prepaid expenses</a></td>
<td class="nump">600<span></span>
</td>
<td class="nump">177<span></span>
</td>
<td class="nump">920<span></span>
</td>
<td class="nump">157<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities', window );">Accounts payable and accrued liabilities</a></td>
<td class="nump">1,056<span></span>
</td>
<td class="nump">4,250<span></span>
</td>
<td class="num">(3,240)<span></span>
</td>
<td class="num">(4,532)<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_wprt_IncreaseDecreaseInWarrantyLiability', window );">Warranty liability</a></td>
<td class="nump">92<span></span>
</td>
<td class="num">(537)<span></span>
</td>
<td class="nump">5<span></span>
</td>
<td class="num">(1,098)<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_IncreaseDecreaseInOperatingCapital', window );">Total changes in operating assets and liabilities</a></td>
<td class="num">$ (533)<span></span>
</td>
<td class="nump">$ 8,964<span></span>
</td>
<td class="num">$ (6,869)<span></span>
</td>
<td class="nump">$ 17,141<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_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-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_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 equivalent, and cash and cash equivalent restricted to withdrawal or usage; attributable to continuing operation. Cash includes, but is not limited to, currency on hand, demand deposit with financial institution, and account with general characteristic of demand deposit. Cash equivalent includes, but is not limited to, short-term, highly liquid investment that is both readily convertible to known amount of cash and so near maturity that it presents insignificant risk of change in value because of change in interest rate.</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> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-8<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-24<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsDisposalGroupIncludingDiscontinuedOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 equivalent, and cash and cash equivalent restricted to withdrawal or usage; attributable to discontinued operation. Cash includes, but is not limited to, currency on hand, demand deposit with financial institution, and account with general characteristic of demand deposit. Cash equivalent includes, but is not limited to, short-term, highly liquid investment that is both readily convertible to known amount of cash and so near maturity that it presents insignificant risk of change in value because of change in interest rate.</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> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-8<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-24<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsDisposalGroupIncludingDiscontinuedOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 equivalent, and cash and cash equivalent restricted to withdrawal or usage; including, but not limited to, discontinued operation. Cash includes, but is not limited to, currency on hand, demand deposit with financial institution, and account with general characteristic of demand deposit. Cash equivalent includes, but is not limited to, short-term, highly liquid investment that is both readily convertible to known amount of cash and so near maturity that it presents insignificant risk of change in value because of change in interest rate.</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> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-8<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-24<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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 and cash equivalent, and cash and cash equivalent restricted to withdrawal or usage; including effect from exchange rate change and including, but not limited to, discontinued operation. Cash includes, but is not limited to, currency on hand, demand deposit with financial institution, and account with general characteristic of demand deposit. Cash equivalent includes, but is not limited to, short-term, highly liquid investment that is both readily convertible to known amount of cash and so near maturity that it presents insignificant risk of change in value because of change in interest rate.</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> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-24<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -SubTopic 230<br> -Topic 830<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477401/830-230-45-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;">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_CashProvidedByUsedInFinancingActivitiesDiscontinuedOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 activity attributable to discontinued operation. Financing activity includes, but is not limited to, obtaining resource from owner and providing return on, and return of, their investment; borrowing money and repaying amount borrowed, or settling obligation; and obtaining and paying for other resource obtained from creditor 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://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-24<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashProvidedByUsedInFinancingActivitiesDiscontinuedOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 activity attributable to discontinued operation. Investing activity includes, but is not limited to, making and collecting loan, acquiring and disposing of debt and equity instruments, 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://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-24<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5B<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 activity attributable to discontinued operation. Operating activity includes, but is not limited to, transaction, adjustment, and change in value not defined as investing or financing activity.</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> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-24<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5B<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DeconsolidationGainOrLossAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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) from deconsolidation of subsidiary and derecognition of group of assets constituting transfer of business or nonprofit activity, excluding conveyance of oil and gas mineral rights and transfer of good or service in contract with customer.</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> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-1B<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 21<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476148/220-40-50-21<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeconsolidationGainOrLossAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DeferredIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 deferred income tax expense (benefit) pertaining to income (loss) from continuing operations.</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> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 740<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-9<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DepreciationDepletionAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the 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> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476148/220-40-50-12<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 49<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-49<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476148/220-40-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DepreciationDepletionAndAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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) from effect of exchange rate change on cash and cash equivalent, and cash and cash equivalent restricted to withdrawal or usage; held in foreign currency; attributable to continuing operation. Cash includes, but is not limited to, currency on hand, demand deposit with financial institution, and account with general characteristic of demand deposit. Cash equivalent includes, but is not limited to, short-term, highly liquid investment that is both readily convertible to known amount of cash and so near maturity that it presents insignificant risk of change in value because of change in interest rate.</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> -Topic 830<br> -SubTopic 230<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477401/830-230-45-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;">us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_ForeignCurrencyTransactionGainLossBeforeTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 tax, of realized and unrealized gain (loss) from foreign currency transaction.</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> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482014/830-20-35-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481956/830-20-45-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481926/830-20-50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481839/830-10-45-17<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (o)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476148/220-40-50-22<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ForeignCurrencyTransactionGainLossBeforeTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromContinuingOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 tax of income (loss) from continuing operations 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://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 105<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 9<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479343/105-10-65-9<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(13))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-3<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 11: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 12: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 18<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-18<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromEquityMethodInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 (loss) for proportionate share of equity method investee's income (loss).</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> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(10))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481664/323-10-45-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(12))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(13)(f))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-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;">us-gaap_IncomeLossFromEquityMethodInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_IncomeTaxesPaidNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 refund, of cash paid to foreign, federal, state, and local jurisdictions as income tax.</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> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-2A<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 23<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-23<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-22<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-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;">us-gaap_IncomeTaxesPaidNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 amounts payable to vendors for goods and services received and the amount of obligations and expenses incurred but not 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> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_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> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_IncreaseDecreaseInOperatingCapital">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 asset and (increase) decrease in liability, used in operating activity in reconciling net income to reflect cash provided by (used in) operating activity when indirect cash flow method is applied.</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> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInOperatingCapital</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_IncreaseDecreaseInPrepaidExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 amount of outstanding money paid in advance for goods or services that bring economic benefits for future periods.</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> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInPrepaidExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_InterestExpenseLongTermDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 amount of interest paid or due on all 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/2003/role/disclosureRef<br> -Name Regulation S-K (SK)<br> -Number 229<br> -Section 1402<br> -Paragraph a<br> -Publisher SEC<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Regulation S-K (SK)<br> -Number 229<br> -Section 1402<br> -Paragraph b<br> -Subparagraph (1)<br> -Publisher SEC<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-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;">us-gaap_InterestExpenseLongTermDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_InterestPaidNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 paid for interest, excluding capitalized interest, classified as operating activity. Includes, but is not limited to, payment to settle zero-coupon bond for accreted interest of debt discount and debt instrument with insignificant coupon interest rate in relation to effective interest rate of borrowing attributable to accreted interest of debt discount.</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> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 17<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-17<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-25<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-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;">us-gaap_InterestPaidNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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> -Topic 330<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483080/330-10-50-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;">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_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 activity attributable to continuing operation. Financing activity includes, but is not limited to, obtaining resource from owner and providing return on, and return of, their investment; borrowing money and repaying amount borrowed, or settling obligation; and obtaining and paying for other resource obtained from creditor 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/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-24<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract</td>
</tr>
<tr>
<td style="padding-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_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 activity attributable to continuing operation. Investing activity includes, but is not limited to, making and collecting loan, acquiring and disposing of debt and equity instruments, 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/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-24<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract</td>
</tr>
<tr>
<td style="padding-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_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 activity attributable to continuing operation. Operating activity includes, but is not limited to, transaction, adjustment, and change in value not defined as investing or financing activity.</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> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-24<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-25<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract</td>
</tr>
<tr>
<td style="padding-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_PaymentsToAcquireEquityMethodInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 purchase of or advances to an equity method investments, which are investments in joint ventures and entities in which the entity has an equity ownership interest normally of 20 to 50 percent and exercises significant influence.</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> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsToAcquireEquityMethodInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ProceedsFromLinesOfCredit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 from contractual arrangement with the lender, including but not limited to, letter of credit, standby letter of credit and revolving credit arrangements.</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> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(f))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-14<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromLinesOfCredit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_ProceedsFromSaleMaturityAndCollectionsOfInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 sale, maturity and collection of all investments such as debt, security and so forth 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> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-12<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_RepaymentsOfLongTermLinesOfCredit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 the settlement of obligation drawn 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 maturities due beyond 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> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-15<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RepaymentsOfLongTermLinesOfCredit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_SupplementalCashFlowInformationAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_SupplementalCashFlowInformationAbstract</td>
</tr>
<tr>
<td style="padding-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_wprt_IncreaseDecreaseInWarrantyLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 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;">wprt_IncreaseDecreaseInWarrantyLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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_wprt_ProceedsFromCollectionOfHoldbackReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 Collection Of Holdback Receivable</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;">wprt_ProceedsFromCollectionOfHoldbackReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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>15
<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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Company organization and operations<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2025</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 );">Company organization and operations</a></td>
<td class="text"><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">1.          Company organization and operations:</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%"> </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:112%">Westport Fuel Systems Inc. (the &#8220;Company&#8221; or "Westport") was incorporated under the Business Corporations Act (Alberta) on March 20, 1995. Westport is a technology and innovation company. As a  supplier of alternative fuel, low-emissions transportation technologies, Westport designs, manufactures, and supplies components and systems that enable the transition from traditional fuels to cleaner energy solutions for heavy-duty commercial vehicles and other on- and off-road applications. The Company has a 55% ownership in Cespira, a joint venture with Volvo Group ("Volvo") formed in 2024. Cespira is committed to advancing the development and commercialization of the HPDI</span><span style="color:#000000;font-family:'null',sans-serif;font-size:10pt;font-weight:400;line-height:112%">&#8482;</span><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:112%"> fuel system, a fully OEM-integrated gaseous fuel systems that enables heavy-duty diesel engines to operate with a range of clean-burning fuels including natural gas, renewable natural gas ("RNG"), hydrogen ("H2") and other alternative fuels. Westport supplies its products directly to original equipment manufacturers (&#8220;OEMs&#8221;) and Tier 1 and Tier 2 OEM suppliers.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NatureOfOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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/exampleRef<br> -Topic 275<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482836/275-10-55-4<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 275<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482836/275-10-55-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 275<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 275<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-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;">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>16
<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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Liquidity and Going Concern<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2025</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_SubstantialDoubtAboutGoingConcernTextBlock', window );">Liquidity and going concern</a></td>
<td class="text"><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:112%">2.          Liquidity and going concern:</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:112%">For the six months ended June 30, 2025, the Company reported operating losses of $2,788. The Company continues to use cash to support its business activities and support the growth of Cespira. As at June&#160;30, 2025, the Company had cash and cash equivalents of $6,064 in continuing operations ($21,383 inclusive of cash and cash equivalents classified as held for sale) and long-term debt borrowed from Export Development Canada ("EDC") of $4,882, net of deferred financing fees, of which $3,905</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:112%"> </span><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:112%">was current. Under the term loan with EDC, the Company has a cash covenant with a consolidated cash requirement of $15,000. If the Company's cash and cash equivalents fall below the minimum cash requirement, the Company may be required to repay the outstanding amount of the term loan.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:112%">On September 13, 2024, the Company announced an at-the-market equity offering program (the "ATM Program") that allows the Company to issue up to $35,000 in common shares from treasury to the public from time to time, at the Company's discretion and subject to regulatory requirements. As at June&#160;30, 2025, no shares were issued from treasury. The Company's Base Shelf Prospectus expired in June 2025.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:115%">On July 29, 2025, the Company closed the sale of the Light-Duty segment to a wholly-owned investment vehicle of Heliaca Investments ("Purchaser"), a Netherlands based investment firm supported by Ramphastos Investments Management B.V., a prominent Dutch venture capital and private equity firm for net proceeds of approximately $62,513 (&#8364;53,600) (refer to note 5 for details).</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:112%">In connection with preparing consolidated financial statements for each annual and interim reporting period, the Company is required to evaluate whether there are conditions or events, considered in aggregate, that raise substantial doubt about the Company&#8217;s ability to continue as a going concern within one year after the date the consolidated financial statements are issued. Substantial doubt exists when conditions and events, considered in aggregate, indicate that it is probable a company will be unable to meet its obligations as they become due within one year after the date the consolidated financial statements are issued. This evaluation initially does not take into consideration the potential mitigating effect of management&#8217;s plans and actions that have not been fully implemented as of the date the consolidated financial statements are issued. When substantial doubt exists, management evaluates whether the mitigating effect of its plans sufficiently alleviates substantial doubt about the Company&#8217;s ability to continue as a going concern. The mitigating effect of management&#8217;s plans, however, is only considered if both: (1) it is probable the plans will be effectively implemented within one year after the date the consolidated financial statements are issued; and (2) it is probable the plans, when implemented, will mitigate the relevant conditions or events that raise substantial doubt about the Company&#8217;s ability to continue as a going concern within one year after the date the consolidated financial statements are issued.</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">2.          Liquidity and going concern (continued):</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Based on the Company's projected capital expenditures, debt servicing obligations and operating requirements under its current business plan, management is projecting that its existing cash and cash equivalents will not be sufficient to fund its operations through the next twelve months from the date of the issuance of these condensed consolidated interim financial statements ("interim financial statements"). These conditions raise substantial doubt about the Company's ability to continue as a going concern within one year after the date these interim financial statements are issued.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Management is currently evaluating several different options to improve Westport's liquidity position, including raising funds from the public markets, borrowing debt or other financing alternatives.  These plans are not final and are subject to market and other conditions not the Company's control. As such, there can be no assurances that Westport will be successful in obtaining sufficient funding. Accordingly, the Company concluded under the accounting standards that these plans do not alleviate the substantial doubt about Westport's ability to continue as a going concern.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">These interim financial statements have been prepared on a going concern basis, which contemplates the realization of assets and satisfaction of liabilities in the ordinary course of business. The interim financial statements do not include any adjustments related to the recoverability and classification of recorded asset amounts or the amounts and classification of liabilities that may be necessary if the Company were unable to continue as a going concern.</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_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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubstantialDoubtAboutGoingConcernTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 when substantial doubt is raised about the ability to continue as a going concern. Includes, but is not limited to, principal conditions or events that raised substantial doubt about the ability to continue as a going concern, management's evaluation of the significance of those conditions or events in relation to the ability to meet its obligations, and management's plans that alleviated or are intended to mitigate the conditions or events that raise substantial doubt about the ability to continue as a going concern.</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> -Topic 205<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/205-40/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SubstantialDoubtAboutGoingConcernTextBlock</td>
</tr>
<tr>
<td style="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>17
<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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Basis of preparation<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2025</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_BasisOfAccounting', window );">Basis of preparation</a></td>
<td class="text"><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:112%">3.          Basis of preparation:</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:112%"> </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(a)&#160;&#160;&#160;&#160;Basis of presentation:</span></div><div><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:117%">The interim financial statements have been prepared by the Company and do not include all of the information and disclosures required by accounting principles generally accepted in the United States ("GAAP"). In the opinion of management, all normal recurring accruals and adjustments considered necessary for a fair presentation have been included. The results for the three and six months ended June 30, 2025 are not necessarily indicative of the results that may be expected for the year ending December&#160;31, 2025. The interim financial statements should be read in conjunction with the audited consolidated financial statements and notes to the consolidated financial statements for the year ended December&#160;31, 2024.</span></div><div><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:118%">The preparation of financial statements in conformity with GAAP requires management to make estimates and assumptions that affect the amounts reported in the interim financial statements and accompanying notes. Actual results could differ from those estimates. Certain prior period figures have been adjusted to conform to current period presentation in the interim financial statements.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(b)&#160;&#160;&#160;&#160;Foreign currency translation:</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company&#8217;s functional currency is the Canadian dollar and its reporting currency for its interim financial statement presentation is the United States dollar ("U.S. Dollar"). The functional currencies for the Company's significant subsidiaries include the following: U.S. Dollar, Canadian dollar, Euro, Argentina Peso, Chinese Renminbi (&#8220;RMB&#8221;) and Polish Zloty. The Company translates assets and liabilities of non-U.S. dollar functional currency operations using the period end exchange rates,&#160;shareholders&#8217; equity balances using the weighted average of historical exchange rates, and revenues and expenses using the monthly average rate for the period with the&#160;resulting exchange differences&#160;recognized in other comprehensive income (loss).&#160;</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">3.          Basis of preparation (continued):</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Transactions that are denominated in currencies other than the functional currencies of the Company&#8217;s or its subsidiaries' operations are translated at the rates in effect on the date of the transaction.&#160;Foreign currency denominated monetary assets and liabilities are translated to the applicable functional currency&#160;at the exchange rates in effect on the balance sheet date. Non-monetary assets and liabilities are translated at the historical exchange rate. All foreign exchange gains and losses are recognized in the condensed consolidated interim statements of operations, except for the translation gains and losses arising from available-for-sale instruments, which are recorded through other comprehensive income (loss) until realized through disposal or impairment.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Except as otherwise noted, all amounts in these interim financial statements are presented in thousands of U.S. dollars. For the periods presented, the Company used the following exchange rates:</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"><tr><td style="width:1.0%"></td><td style="width:20.339%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.381%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.381%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.381%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.381%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.381%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.386%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Period&#160;ended</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Average for the three months ended</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Average for the six months ended</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">June 30, 2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">December 31, 2024</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">June 30, 2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">June 30, 2024</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">June 30, 2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">June 30, 2024</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Canadian Dollar</span></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.36&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.44&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.38&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.37&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.41&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.37&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Euro</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.85&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.96&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.88&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.93&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.91&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.93&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">RMB</span></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7.17&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7.30&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7.23&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7.24&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7.25&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7.25&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Polish Zloty</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.61&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.12&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.75&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.99&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.87&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.01&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Swedish Krona</span></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9.49&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11.03&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9.66&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.68&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.13&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.49&#160;</span></td><td style="background-color:#dbdbdb;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></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Indian Rupee</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">85.75&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">85.60&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">85.56&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">83.42&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">86.09&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">83.48&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Argentina Peso</span></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,192.11&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,032.12&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,145.65&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">885.31&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,098.03&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">903.40&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(c)&#160;&#160;&#160;&#160;Held-for-sale disposal group and discontinued operations:</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company classifies a component of an entity as a held-for-sale disposal group when it has been disposed of during the period, or it has met all of the held-for-sale criteria under </span><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Topic 205 - Presentation of Financial Statements</span><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> at the balance sheet reporting date. Held-for-sale disposal groups are measured at the lower of its carrying amount and fair value less cost to sell. If the fair value less cost to sell is lower than its carrying amount, a loss is recognized to write down the carrying amount of the disposal group as a whole.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">After a disposal group has been classified as held-for-sale, management may decide to reverse its plan to divest, or circumstances may change so that the disposal group no longer meets the held-for-sale criteria. In such instances, the Company would reclassify the disposal group's assets and liabilities on the balance sheet as held-and-used and remeasure the assets on the date of reclassification.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A component that has been disposed of or is held-for-sale is reported in discontinued operations if its disposition represents a strategic shift and has (or will have) a major effect on the entity's operations and financial results. Discontinued operations are reported separately from the Company's continuing operations on the balance sheet, income statement, and statement of cash flows. For comparative purposes, the Company adjusted the prior periods presented in the interim financial statements to reflect the effect of operations discontinued in the current period. The Company's interim financial statements eliminated its intercompany balances with its discontinued operations as the intercompany balances will be settled upon disposal.</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_BasisOfAccounting">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 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>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483426/235-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BasisOfAccounting</td>
</tr>
<tr>
<td style="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>18
<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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>New accounting pronouncements<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2025</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_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock', window );">New accounting pronouncements</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:700;line-height:120%">4.          New accounting pronouncements</span></div><div style="text-align:justify"><span><br/></span></div><div style="margin-bottom:6pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Upcoming accounting standards not yet adopted:</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In December 2023, the FASB issued ASU 2023-09, "Income Taxes (Topic 740): Improvements in Income Tax Disclosures" to enhance the transparency and decision usefulness of income tax disclosures. This amendment requires public companies to disclose specific categories in the rate reconciliation and provide additional information for reconciling items that meet a quantitative threshold. Additionally, under the amendment entities are required to disclose the amount of income taxes paid disaggregated by federal, state and foreign taxes, as well as disaggregated by material individual jurisdictions. Finally, the amendment requires entities to disclose income from continuing operations before income tax expense disaggregated between domestic and foreign and income tax expense from continuing operations disaggregated by federal, state and foreign. This guidance is effective for annual reporting periods beginning after December 15, 2024. While this guidance may have an impact on the disclosures, the Company does not expect this guidance to have a material impact on its  financial position, operations, and cash flows.</span></div><div><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In November 2024, the FASB issued ASU 2024-03, "Income Statement - Reporting Comprehensive Income - Expense Disaggregation Disclosures (Subtopic 220-40): Disaggregation of Income Statement Expenses." It requires entities to disclose, in the notes to the financial statements, specified information related to certain costs and expenses disaggregated by type. The standard improves transparency by providing more detailed information about the component of costs and expenses that would enable users to better understand the major components of an entity's income statement by referencing disclosures in the notes to financial statements. This guidance is effective for annual reporting periods beginning after December 15, 2026. While this guidance may have an impact on the disclosures, the Company does not expect this guidance to have a material impact on its  financial position, operations, and cash flows.</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_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 change in accounting principle. Includes, but is not limited to, nature, reason, and method of adopting amendment to accounting standards or other change in accounting principle.</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> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 105<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 9<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479343/105-10-65-9<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 17<br> -Subparagraph (d)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480336/718-10-65-17<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 17<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480336/718-10-65-17<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476173/280-10-65-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 105<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479343/105-10-65-7<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 848<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483550/848-10-65-2<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 848<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483550/848-10-65-2<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 848<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483550/848-10-65-1<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(iv)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5<br> -Subparagraph (SAB Topic 11.M.Q2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480530/250-10-S99-5<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (i)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480528/815-20-65-6<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (e)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479654/326-10-65-4<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (e)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479654/326-10-65-4<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480530/250-10-S99-6<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (f)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481538/470-20-65-4<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481538/470-20-65-4<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Topic 250<br> -Publisher FASB<br> -URI https://asc.fasb.org/250/tableOfContent<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-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;">us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock</td>
</tr>
<tr>
<td style="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>19
<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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Held-for-sale disposal group and discontinued operations<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2025</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_DiscontinuedOperationsAndDisposalGroupsAbstract', window );"><strong>Discontinued Operations and Disposal Groups [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_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock', window );">Held-for-sale disposal group and discontinued operations</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">5.          Held-for-sale disposal group and discontinued operations:</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%"> </span></div><div><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On May 15, 2025, the Company held its Annual General and Special Meeting of Shareholders. At the meeting, shareholders approved management's plan to sell the Light-Duty segment in accordance with the terms of the sale and purchase agreement ("SPA") dated March 30, 2025.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As at June 30, 2025, the Company accounted for the Light-Duty segment as a held-for-sale disposal group and presented its financial position and operating results in discontinued operations for both the current and comparative periods. As part of the terms of the transaction, the long-term debt with UniCredit S.p.A., Deutsche Bank, Banca de Credito Cooperativo, and Rabobank in Westport Fuel Systems Italia S.r.l and its subsidiaries will remain with the disposal group. As a result of classifying the Light-Duty segment as held-for-sale, the Company recorded a write-down loss of $30,183 in discontinued operations.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Light-Duty's total additions to long-lived assets, excluding business combinations for the three and six months ended June 30, 2025 was $1,620 and $3,926, respectively (three and six months ended June 30, 2024 was $4,176 and $8,325).</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:115%">On July 14, 2025, the Company entered into a short-term loan with the Purchaser for $5,831 (&#8364;5,000). The loan was subsequently repaid on July 29, 2025.</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:400;line-height:115%">5.          Assets and liabilities held for sale (continued):</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:115%">On July 29, 2025, the Company closed the sale of its Light-Duty segment to the Purchaser. The transaction provided $62,513 (&#8364;53,600) in net proceeds received as $41,170 (&#8364;35,300) in initial cash proceeds, $8,514 (&#8364;7,300) in deferred payments expected to be received in September 2025 and  $12,829 (&#8364;11,000) in proceeds held in escrow. Net proceeds are after the deduction of net debt in the Light-Duty segment and certain other closing costs. Further, up to $3,790 (&#8364;3,250) in potential earnouts are available if certain conditions are achieved in accordance with terms and conditions in the sale and purchase agreement. The proceeds held in escrow will be released to the Company in four tranches by year-end 2025, early 2026, early 2027 and mid-year 2027. Purchase price adjustments may impact the final proceeds received from the Purchaser and are customary in nature.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Major assets and liabilities of the discontinued operations are as follows:</span></div><div style="text-align:justify"><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:60.303%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.613%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.616%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">June 30, 2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Cash</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">15,319&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">22,892&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Accounts receivable</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">67,947&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">54,316&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Inventories</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">53,383&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">46,858&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Prepaid expenses</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">5,772&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">4,332&#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:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">142,421&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">128,398&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Long-term investments</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">3,331&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,866&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Property, plant, and equipment</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">43,775&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">38,836&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Operating lease right-of-use asset</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">21,744&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">18,196&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Intangible assets</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">5,179&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">5,184&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Deferred income tax assets</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">10,196&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">9,695&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Goodwill</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">3,257&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,876&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Other long-term assets</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">1,999&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">1,842&#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:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">89,481&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">79,495&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Valuation allowance from classifying the discontinued operations as held-for-sale</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(30,183)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Total assets classified as held for sale</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">201,719&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">207,893&#160;</span></td><td style="background-color:#dbdbdb;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;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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Accounts payable and accrued liabilities</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">78,048&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">68,688&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Current portion of operating lease liabilities</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,703&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,336&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Current portion of long-term debt</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">9,763&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">10,755&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Current portion of warranty liabilities</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">3,416&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,709&#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:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">93,930&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">84,488&#160;</span></td><td style="background-color:#dbdbdb;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></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Long-term operating lease liabilities</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">19,170&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">15,885&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Long-term debt</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">14,487&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">16,135&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Warranty liabilities</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">1,888&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">1,456&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Deferred income tax liabilities</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">3,588&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">4,029&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Other long-term liabilities</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">3,114&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,955&#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:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">42,247&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">40,460&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Total liabilities classified as held for sale</span></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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">136,177&#160;</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 #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">124,948&#160;</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></tr></table></div><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:400;line-height:112%">5.          Assets and liabilities held for sale (continued):</span></div><div style="margin-top:5pt;text-align:justify"><span><br/></span></div><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:112%">Revenue and expenses of the discontinued operation are as follows:</span></div><div style="margin-top:5pt;text-align:justify"><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:53.870%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.572%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.572%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.572%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.578%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Three Months Ended June 30,</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Six Months Ended June 30,</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2024</span></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Revenue</span></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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">76,372&#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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">69,277&#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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">140,004&#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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">132,423&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Cost of revenue</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">61,219&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">54,514&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">111,160&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">105,395&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Gross profit</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">15,153&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">14,763&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">28,844&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">27,028&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Operating expenses:</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Research and development</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,979&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">3,100&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">5,738&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">6,444&#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:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">General and administrative</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">3,756&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">5,883&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">7,481&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">9,041&#160;</span></td><td style="background-color:#dbdbdb;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 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Sales and marketing</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,854&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,478&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">5,169&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">4,644&#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:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Foreign exchange loss</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">1,862&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">198&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,609&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">82&#160;</span></td><td style="background-color:#dbdbdb;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 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Depreciation and amortization</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">646&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">622&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">1,279&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">1,307&#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:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">12,097&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">12,281&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">22,276&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">21,518&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Income from discontinued operations</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">3,056&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,482&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">6,568&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">5,510&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Income from investment accounted for by the equity method</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">387&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">414&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">472&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">445&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Loss from classifying the discontinued operations as held-for-sale</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(30,183)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(30,183)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Impairment of long-lived assets</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(664)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(664)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Interest on long-term debt</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(391)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(438)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(875)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(935)</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Interest and other income (loss), net of bank charges</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">133&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">88&#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:'Montserrat',sans-serif;font-size:9.5pt;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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">503&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Income (loss) from discontinued operations before income tax</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(27,662)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,546&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(24,329)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">5,523&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Income tax expense</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">1,629&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">875&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,118&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">1,479&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Net income (loss) from discontinued operations</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(29,291)</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">1,671&#160;</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(26,447)</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">4,044&#160;</span></td><td style="background-color:#dbdbdb;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><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_DiscontinuedOperationsAndDisposalGroupsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DiscontinuedOperationsAndDisposalGroupsAbstract</td>
</tr>
<tr>
<td style="padding-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_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 related to a disposal group. Includes, but is not limited to, a discontinued operation, disposal classified as held-for-sale or disposed of by means other than sale or disposal of an individually significant component.</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> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/205-20/tableOfContent<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/360/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock</td>
</tr>
<tr>
<td style="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>20
<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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accounts receivable<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2025</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_ReceivablesAbstract', window );"><strong>Receivables [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_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock', window );">Accounts receivable</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">6.          Accounts receivable:</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%">  </span></div><div style="margin-top:5pt"><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:60.303%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.613%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.616%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">June 30, 2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Customer trade receivables</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,916&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,513&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Holdback receivable</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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">10,737&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Other receivables</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">1,728&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">887&#160;</span></td><td style="background-color:#dbdbdb;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></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Due from related parties (note 14)</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">12,505&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">4,973&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Allowance for expected credit losses</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(569)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(372)</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">16,580&#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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">18,738&#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><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In 2022, a holdback receivable was recorded as part of the sale of the Company's interest in Cummins Westport Inc. to Cummins Inc. ("Cummins"). The holdback was retained by Cummins for a term of three years to satisfy any extended warranty obligations in excess of the recorded extended warranty obligation. Unused amounts were repaid to the Company at the end of the three-year term. In March 2025, the Company collected $11,365 from Cummins related to the holdback receivable, including interest accrued.</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_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 claims held for amounts due to entity, excluding financing receivables. Examples include, but are not limited to, trade accounts receivables, notes receivables, loans receivables. Includes disclosure for allowance for credit losses.</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> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/310-10/tableOfContent<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482925/835-30-45-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;">us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock</td>
</tr>
<tr>
<td style="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_ReceivablesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ReceivablesAbstract</td>
</tr>
<tr>
<td style="padding-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>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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Inventories<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2025</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"><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">7.          Inventories:</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%"> </span></div><div style="margin-top:5pt"><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:60.303%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.613%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.616%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">June 30, 2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Purchased parts</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,341&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">5,463&#160;</span></td><td style="background-color:#dbdbdb;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></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Finished goods</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">515&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">1,205&#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></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,856&#160;</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">6,668&#160;</span></td><td style="background-color:#dbdbdb;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-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the three and six months ended June 30, 2025, the Company recorded change in write-downs to net realizable value of approximately $140 and $110, respectively (three and six months ended June 30, 2024 - $307 and $503, 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_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> -Topic 330<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/330/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>22
<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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Long-term investments<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2025</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_InvestmentsDebtAndEquitySecuritiesAbstract', window );"><strong>Investments, Debt and Equity Securities [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_EquityMethodInvestmentsDisclosureTextBlock', window );">Long-term investments</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">8.          Long-term investments:</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%"> </span></div><div style="margin-top:5pt"><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:60.303%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.613%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.616%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">June 30, 2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Cespira Canada LP</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">24,263&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">25,494&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Cespira Sweden AB</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">12,859&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">11,225&#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></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" 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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Other equity-accounted investees</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">147&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">37,122&#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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">36,866&#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><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the three and six months ended June&#160;30, 2025, the Company recognized its share of Cespira's losses of $3,686 and $7,570</span><span style="background-color:#ffffff;color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">as a loss from investment accounted for by the equity method, respectively (three and six months ended June 30, 2024 - $1,102 and $1,102, respectively).</span></div><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the three and six months ended June 30, 2025, the Company contributed additional capital of $4,185 and $8,871 into Cespira, respectively (three and six months ended June 30, 2024 - $9,900 and $9,900, respectively).</span></div><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:400;line-height:120%">8.          Long-term investments (continued):</span></div><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Combined assets, liabilities, revenue and expenses of Cespira, are as follows:</span></div><div style="margin-top:5pt;text-align:justify"><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:61.180%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.174%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.178%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">June 30,</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">December 31, </span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2024</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash and cash equivalents</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,010&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,305&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts receivable</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25,068&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,000&#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:#dbdbdb;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Inventories</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,512&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,414&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Prepaid expenses</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,376&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,471&#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:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">53,966&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">40,190&#160;</span></td><td style="background-color:#dbdbdb;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></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property, plant and equipment</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">41,409&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">40,901&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Intangible assets</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,215&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,087&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">595&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">563&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferred tax assets</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">102&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total assets</span></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:'Montserrat',sans-serif;font-size:10pt;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">103,287&#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:'Montserrat',sans-serif;font-size:10pt;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">88,741&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current liabilities:</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;border-top:3pt double #000;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts payable</span></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:'Montserrat',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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,680&#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:'Montserrat',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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,527&#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:#dbdbdb;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current portion of provisions</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,826&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,128&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other current liabilities</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,800&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,910&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;&#160;&#160;Deferred income tax liabilities</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">197&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">29,503&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,565&#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></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-term portion of provisions</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">456&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">532&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other long-term liabilities</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">290&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">569&#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></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" 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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total liabilities</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,249&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,666&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net assets</span></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:'Montserrat',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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">73,038&#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:'Montserrat',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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">67,075&#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-top:5pt;text-align:justify"><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:38.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.519%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.519%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.519%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.526%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Three Months Ended June 30,</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Six Months Ended June 30,</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2024</span></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" 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></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Revenue</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,020&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,059&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">28,819&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,059&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost of revenue</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,946&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,901&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,230&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,901&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gross profit</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,926)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">158&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,411)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">158&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="21" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating expenses:</span></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:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Research and development</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,888&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,121&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,890&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,121&#160;</span></td><td style="background-color:#dbdbdb;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 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">General and administrative</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,692&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">715&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,419&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">715&#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:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Sales and marketing</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">322&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">69&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">618&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">69&#160;</span></td><td style="background-color:#dbdbdb;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 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign exchange gain</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(845)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(88)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',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:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Depreciation and amortization</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">860&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">265&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,590&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">265&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,917&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,170&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,429&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,170&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Loss from operations</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(6,843)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,012)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(13,840)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,012)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest income, net of bank charges</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25&#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:'Montserrat',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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32&#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:'Montserrat',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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Loss before income taxes</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(6,818)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,012)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(13,808)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,012)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income tax (recovery) expense</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(72)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',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"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',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></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net loss</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(6,746)</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,016)</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(13,744)</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,016)</span></td><td style="background-color:#dbdbdb;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><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_EquityMethodInvestmentsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 equity method investments and joint ventures. Equity method investments are investments that give the investor the ability to exercise significant influence over the operating and financial policies of an investee. Joint ventures are entities owned and operated by a small group of businesses as a separate and specific business or project for the mutual benefit of the members of the group.</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/recommendedDisclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478156/740-323-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Topic 323<br> -Publisher FASB<br> -URI https://asc.fasb.org/323/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EquityMethodInvestmentsDisclosureTextBlock</td>
</tr>
<tr>
<td style="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_InvestmentsDebtAndEquitySecuritiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_InvestmentsDebtAndEquitySecuritiesAbstract</td>
</tr>
<tr>
<td style="padding-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>23
<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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Property, plant and equipment<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2025</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, plant and equipment</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">9.          Property, plant and equipment:</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%">  </span></div><div><span><br/></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:55.478%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.788%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.788%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.794%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Accumulated</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Net&#160;Book</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">June 30, 2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Cost</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Depreciation</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Value</span></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Computer equipment and software</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,976&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,799&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">177&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Furniture and fixtures</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,013&#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:'Montserrat',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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">632&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Machinery and equipment</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,942&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,527&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,415&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Leasehold improvements</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,306&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,086&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">220&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,237&#160;</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,793&#160;</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,444&#160;</span></td><td style="background-color:#dbdbdb;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><div><span><br/></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:55.478%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.788%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.788%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.794%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Accumulated</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Net Book</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">December 31, 2024</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Cost</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Depreciation</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Value</span></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Computer equipment and software</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,945&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,575&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">370&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Furniture and fixtures</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">861&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">309&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">552&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Machinery and equipment</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,464&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,488&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,976&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Leasehold improvements</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,064&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,842&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">222&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,334&#160;</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,214&#160;</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,120&#160;</span></td><td style="background-color:#dbdbdb;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><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://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/360/tableOfContent<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -SubTopic 360<br> -Topic 958<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477798/958-360-50-6<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -SubTopic 360<br> -Topic 958<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477798/958-360-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -SubTopic 360<br> -Topic 958<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477798/958-360-50-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>24
<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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accounts payable and accrued liabilities<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2025</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_PayablesAndAccrualsAbstract', window );"><strong>Payables and Accruals [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_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock', window );">Accounts payable and accrued liabilities</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">10.          Accounts payable and accrued liabilities:</span></div><div style="margin-top:5pt"><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:60.303%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.613%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.616%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">June 30, 2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Trade accounts payable</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">8,190&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">11,397&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Accrued payroll</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">3,261&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,555&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Taxes payable</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">3,812&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">3,813&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Deferred revenue</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">330&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">533&#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></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" 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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Due to related parties (note 14)</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,001&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">1,137&#160;</span></td><td style="background-color:#dbdbdb;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></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">17,594&#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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">19,435&#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><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_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 accounts payable and accrued liabilities at the end of the reporting 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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(24))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 720<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483384/720-30-45-1<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-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;">us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock</td>
</tr>
<tr>
<td style="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_PayablesAndAccrualsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_PayablesAndAccrualsAbstract</td>
</tr>
<tr>
<td style="padding-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>25
<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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Operating leases right-of-use assets and lease liabilities<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2025</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_LesseeOperatingLeasesTextBlock', window );">Operating leases right-of-use assets and lease liabilities</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">11.          Operating leases right-of-use assets and lease liabilities:</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%"> </span></div><div><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company has entered into various non-cancellable operating lease agreements primarily for its manufacturing facilities and offices. The Company's leases have lease terms expiring between 2027 and 2030. Many leases include one or more options to renew. The Company does not assume renewals in its determination of the lease term unless the renewals are deemed to be reasonably assured at lease commencement. The average remaining lease term is approximately four years and the present value of the outstanding operating lease liability was determined applying a weighted average discount rate of 9.3% based on incremental borrowing rates applicable in each location.</span></div><div style="margin-top:7.5pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The components of lease cost are as follows:</span></div><div style="margin-top:5pt;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:39.835%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.935%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.935%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.935%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.940%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Three months ended June 30,</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Six months ended June 30,</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2024</span></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" 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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amortization of right-of-use assets</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">95&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">188&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">185&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">323&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">44&#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></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" 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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total lease cost</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">101&#160;</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">209&#160;</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">199&#160;</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">367&#160;</span></td><td style="background-color:#dbdbdb;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-top:5pt"><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:400;line-height:120%">11.          Operating leases right-of-use assets and lease liabilities (continued):</span></div><div><span><br/></span></div><div style="margin-top:7.5pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The maturities of lease liabilities as at June&#160;30, 2025 are as follows:</span></div><div style="margin-top:5pt;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:80.186%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.884%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" 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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">The remainder of 2025</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">336&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2026</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">595&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2027</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">608&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2028</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">551&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2029</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">487&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Thereafter</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">293&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total undiscounted cash flows</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,870&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: imputed interest</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">905&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Present value of operating lease liabilities</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,965&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: current portion</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">633&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-term operating lease liabilities</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,332&#160;</span></td><td style="background-color:#dbdbdb;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><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_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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/842-20/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Long-term debt<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2025</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_LongTermDebtTextBlock', window );">Long-term debt</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">12.          Long-term debt:</span></div><div style="margin-top:5pt"><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:26.531%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></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:1.0%"></td><td style="width:17.613%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.616%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Term loan facility</span></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Maturity date</span></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Interest rate</span></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">June 30, 2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">EDC</span></td><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">September 15, 2026</span></td><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">U.S. Prime Rate plus 2.01%</span></div></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">4,882&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">6,837&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;&#160;&#160;Current portion</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="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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">3,905&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">3,905&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;&#160;&#160;Long-term portion</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">977&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,932&#160;</span></td><td style="background-color:#dbdbdb;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></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" 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="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" 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="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" 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="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="6" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Term loan facilities, net of debt issuance costs</span></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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">4,882&#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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">6,837&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:112%">On December 13, 2021, the credit facility and non-revolving term facility with EDC were refinanced into one $20,000 term loan, with quarterly principal and interest payments. On May 31, 2024, the Company amended the loan agreement with EDC to permit the asset transfer of certain property, plant, and equipment previously pledged to the loan into Cespira, removal of Fuel System Solutions Inc. as a borrower, added Westport Fuel Systems Canada Inc. as a borrower and modified the securities pledged to the loan. The loan is secured by share pledges in the Company's equity interest in Cespira.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:112%">Throughout the term of certain of these financing arrangements, the Company is required to meet certain financial and non-financial covenants. As at June&#160;30, 2025, the Company is in compliance with all covenants under the financing arrangements.</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The principal repayment schedule of long-term debt is as follows as at June&#160;30, 2025: </span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.976%"><tr><td style="width:1.0%"></td><td style="width:78.663%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.538%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:18.399%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" 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:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Term loan facility</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" 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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Remainder of 2025</span></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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">1,953&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" 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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2026</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,929&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" 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></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" 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></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td 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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">4,882&#160;</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="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display: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><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_LongTermDebtTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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-term 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> -Topic 470<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/470/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtTextBlock</td>
</tr>
<tr>
<td style="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>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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Share capital, stock options and other stock-based plans<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2025</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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract', window );"><strong>Share-Based Payment Arrangement [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_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock', window );">Share capital, stock options and other stock-based plans</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">13.          Share capital, stock options and other stock-based plans:</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%"> </span></div><div><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:112%">During the three and six months ended June 30, 2025, the Company issued 24,273 and 68,071 common shares, respectively, net of cancellations, upon exercises of share units (three and six months ended June 30, 2024 &#8211; 35,210 and 83,862 common shares, respectively). The Company issues&#160;shares from treasury to satisfy share unit exercises.</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(a)&#160;&#160;&#160;&#160;Share Units (&#8220;Units&#8221;):</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The value assigned to issued Units and the amounts accrued are recorded as other equity instruments. As Units are exercised or vest and the underlying shares are issued from treasury of the Company, the value is reclassified to share capital.</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-align:justify"><span style="background-color:#ffffff;color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the three and six months ended June 30, 2025</span><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, the Company recognized $451 and $736, respectively (three and six months ended June 30, 2024 - $1,083 and $1,492, respectively) of stock-based compensation associated with the Westport Omnibus Plan. The Westport Omnibus Plan aims to advance the Company's interests by encouraging employees, consultants and non-employee directors to receive equity-based compensation and incentives. The plan outlines the stock-based options types, eligibility and vesting terms.</span></div><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A continuity of the Units issued under the Westport Omnibus Plan are as follows:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"><tr><td style="width:1.0%"></td><td style="width:31.939%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.905%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.905%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.905%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.910%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Six months ended June 30, 2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Six months ended June 30, 2024</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Number&#160;of<br/>Units</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Weighted<br/>average<br/>grant<br/>date&#160;fair<br/>value<br/>(CDN&#160;$)</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Number&#160;of<br/>Units</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Weighted<br/>average<br/>grant<br/>date&#160;fair<br/>value<br/>(CDN&#160;$)</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Outstanding, beginning of period</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">524,322&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11.75&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">478,643&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">15.68&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Granted</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">137,151&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3.99&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">169,835&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8.56&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Exercised</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(68,071)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">17.48&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(83,862)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">17.93&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Forfeited/expired</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(117,296)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11.36&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(38,406)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">26.07&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Outstanding, end of period</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">476,106&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8.78&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">526,210&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">12.23&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Units outstanding and exercisable, end of period</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">491&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #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:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">31.07&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #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-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">15,052&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #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:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11.41&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="background-color:#ffffff;color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the </span><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">six months ended June 30, 2025</span><span style="background-color:#ffffff;color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, </span><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">137,151 share units were granted to certain employees and directors (six months ended June 30, 2024 - 169,835). This included nil restricted share units (&#8220;RSUs&#8221;) (six months ended June 30, 2024 - 50,000), nil  performance share units (&#8220;PSUs&#8221;) (six months ended June 30, 2024 - nil) and 137,151 deferred share units ("DSUs") (six months ended June 30, 2024 - 119,835). </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Values of PSUs are determined using the Monte&#8211;Carlo Simulation Model. RSUs typically vest over a three-year period so the actual value received by the individual depends on the share price on the day such RSUs are settled for common shares, not the date of grant. Vesting of DSUs shall occur immediately prior to the resignation, retirement or termination of directorship, in accordance with the terms of Westport's Omnibus Plan.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As at June&#160;30, 2025, $540&#160;of compensation expense related to Units awarded has yet to be recognized in results from operations and will be recognized ratably over 1.6 years.</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(b)&#160;&#160;&#160;&#160;Aggregate intrinsic values:</span></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The aggregate intrinsic value of the Company&#8217;s share units at June&#160;30, 2025 as follows: </span></div><div style="margin-top:5pt"><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:79.016%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:18.054%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">June 30, 2025</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(CDN $)</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Share units:</span></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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Outstanding</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,578&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Exercisable</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">15&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Exercised</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">285&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(c)&#160;&#160;&#160;&#160;Stock-based compensation:</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Stock-based compensation associated with the Unit plans is included in operating expenses as follows:</span></div><div style="margin-top:5pt"><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:38.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.373%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.373%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.373%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.380%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Three Months Ended June 30,</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Six Months Ended June 30,</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2024</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Cost of revenue</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">36&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">77&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Research and development</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">15&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">53&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">28&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">163&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">General and administrative</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">433&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">945&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">680&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">1,144&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Sales and marketing</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;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"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">28&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">108&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">451&#160;</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">1,083&#160;</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">736&#160;</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">1,492&#160;</span></td><td style="background-color:#dbdbdb;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><div><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Of the stock-based compensation expense recognized in the three and six months ended June 30, 2025, $181 and $393 will settle in shares and $270 and $343 will settle in cash respectively (three and six months ended June 30, 2024 - $302 and $633 will settle in shares and $781 and $859 will settle 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_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 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> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (l)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/718/tableOfContent<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-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;">us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock</td>
</tr>
<tr>
<td style="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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>28
<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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Related party transactions<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2025</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 transactions</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">14.          Related party transactions:</span></div><div><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's related parties are Cespira, directors, officers and shareholders that own more than 10% of the Company's shares.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company engages in transactions with Cespira primarily through the provision of services and the sale of inventory under the transitional services agreement and cross-charges.</span></div><div style="text-align:justify"><span><br/></span></div><div style="margin-bottom:6pt;margin-top:6pt;text-align:justify"><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:39.250%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.373%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.373%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.373%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.379%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Related party transactions with Cespira</span></td><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Three months ended June 30,</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Six months ended June 30,</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2024</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Sales of goods, services, and other income</span></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,721&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">534&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,280&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">534&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Inventory purchased, services and other expenses</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,898&#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:'Montserrat',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></table></div><div style="margin-bottom:6pt;margin-top:6pt;text-align:justify"><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:60.888%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.613%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.615%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Related party balances with Cespira</span></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">June 30, 2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Receivables (note 6)</span></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,505&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,973&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Payables (note 10)</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,001&#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:'Montserrat',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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,137&#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></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_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> -Topic 850<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483326/850-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480990/946-20-50-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480990/946-20-50-5<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480990/946-20-50-6<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477968/946-235-50-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477968/946-235-50-2<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(2)(g)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(2)(c))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(2)(e))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 850<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/850/tableOfContent<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 850<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483326/850-10-50-6<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 850<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483326/850-10-50-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 850<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483326/850-10-50-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;">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>29
<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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<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">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2025</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"><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">15.          Commitments and contingencies:</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%"> </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(a)&#160;&#160;&#160;&#160;Contractual commitments</span></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company is a party to a variety of agreements in the ordinary course of business under which it is obligated to indemnify a third party with respect to certain matters. Typically, these obligations arise as a result of contracts for sale of the Company&#8217;s product to customers where the Company provides indemnification against losses arising from matters such as product liabilities. The potential impact on the Company&#8217;s financial results is not subject to reasonable estimation because considerable uncertainty exists as to whether claims will be made and the final outcome of potential claims. To date, the Company has not incurred significant costs related to these types of indemnifications.</span></div><div><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(b) &#160;&#160;&#160;&#160;Contingencies</span></div><div style="text-align:justify"><span><br/></span></div><div style="margin-bottom:8pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company is engaged in certain legal actions and tax audits in the ordinary course of business and believes that, based on the information currently available, the ultimate outcome of these actions will not have a material adverse effect on our operating results, liquidity or financial position.</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://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 405<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/405-30/tableOfContent<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 440<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482648/440-10-50-4<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 450<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/450/tableOfContent<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 954<br> -SubTopic 440<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478522/954-440-50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 440<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482648/440-10-50-4<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 440<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/440/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Segment information<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2025</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_SegmentReportingAbstract', window );"><strong>Segment Reporting [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_SegmentReportingDisclosureTextBlock', window );">Segment information</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">16.          Segment information:</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%"> </span></div><div style="text-indent:-36pt"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As a result of the classification of the Light-Duty segment as discontinued operations (note 5), the Company reports its results in the following three reportable segments: High-Pressure Controls &amp; Systems, Heavy-Duty OEM, and Cespira. The prior year comparatives were recast to reflect this change in reportable segments.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Segment earnings or losses before income taxes, interest, depreciation, and amortization ("Segment EBITDA") is the measure of segment profitability used by the Company. The accounting policies of our reportable segments are the same as those applied in our consolidated financial statements. Management prepared the financial results of the Company's reportable segments on basis that is consistent with the manner in which Management internally disaggregates financial information to assist in making internal operating decisions. Certain common costs and expenses were allocated among segments and presented differently than the Company would for stand-alone financial information prepared in accordance with GAAP. These include certain costs and expenses of shared services, such as IT, human resources, legal, finance and supply chain management. Segment EBITDA is not defined under US GAAP and may not be comparable to similarly titled measures used by other companies and should not be considered a substitute for net earnings or other results reported in accordance with GAAP.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's Chief Operating Decision Maker ("CODM") uses Segment EBITDA disclosed below to evaluate the performance of its reportable segments. The Company believes Segment EBITDA is most reflective of the operational profitability or loss of its reportable segments. The CODM uses this information to drive decisions and resource allocations. Segment EBITDA is used as the key profitability measure when the Company sets its annual budget.</span></div><div style="margin-bottom:6pt;margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">16.          Segment information (continued):</span></div><div><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Financial information by reportable segment as follows: </span></div><div style="margin-top:5pt;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:47.438%"></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:11.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></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:11.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.332%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="21" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Three months ended June 30, 2025</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">High-Pressure Controls &amp; Systems</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Heavy-Duty OEM</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cespira</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total Segment</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Revenue</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,896&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,602&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">12,020&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">24,518&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of revenue</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,791&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,865&#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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">13,946&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">25,602&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gross profit</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">105&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">737&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,926)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,084)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Operating expenses:</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Research and development</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,635&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">22&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,888&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,545&#160;</span></td><td style="background-color:#dbdbdb;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 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">General and administrative</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">386&#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:'Montserrat',sans-serif;font-size:9pt;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><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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,692&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,112&#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:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Sales and marketing</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">23&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">322&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">348&#160;</span></td><td style="background-color:#dbdbdb;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 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Depreciation and amortization</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">59&#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:'Montserrat',sans-serif;font-size:9pt;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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">860&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">919&#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:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,103&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">59&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,762&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,924&#160;</span></td><td style="background-color:#dbdbdb;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></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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Add back: Depreciation and amortization</span><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline">1</span></div></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">149&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#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="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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">772&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">921&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Segment EBITDA</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,849)</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">678&#160;</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(6,916)</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(8,087)</span></td><td style="background-color:#dbdbdb;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:6pt;margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"><tr><td style="width:1.0%"></td><td style="width:47.211%"></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:11.381%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.387%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.381%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.387%"></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:11.381%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.387%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.385%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="21" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Three months ended June 30, 2024</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">High-Pressure Controls &amp; Systems</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Heavy-Duty OEM</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cespira</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total Segment</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Revenue</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,562&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">10,547&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,059&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">18,168&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of revenue</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,453&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,297&#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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,901&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">15,651&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gross profit</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,109&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,250&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">158&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,517&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Operating expenses:</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Research and development</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,408&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,052&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,121&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,581&#160;</span></td><td style="background-color:#dbdbdb;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 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">General and administrative</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">303&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,156&#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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">715&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,174&#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:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Sales and marketing</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">130&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">352&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">69&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">551&#160;</span></td><td style="background-color:#dbdbdb;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 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Depreciation and amortization</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">43&#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:'Montserrat',sans-serif;font-size:9pt;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><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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">265&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">312&#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:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,884&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,564&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,170&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,618&#160;</span></td><td style="background-color:#dbdbdb;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></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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Add back: Depreciation and amortization</span><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline">1</span></div></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">118&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#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="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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">505&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">623&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Segment EBITDA</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(657)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(2,314)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,507)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(4,478)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;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="border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td></tr><tr style="height:15pt"><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: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="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr></table></div><div><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">16.          Segment information (continued):</span></div><div><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:96.637%"><tr><td style="width:1.0%"></td><td style="width:45.647%"></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:11.759%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.405%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.759%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.405%"></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:11.759%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.405%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.761%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="21" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Six months ended June 30, 2025</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">High-Pressure Controls &amp; Systems</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Heavy-Duty OEM</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cespira</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total Segment</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Revenue</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,786&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">15,035&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">28,819&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">48,640&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of revenue</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,168&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">13,276&#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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">30,230&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">47,674&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gross profit</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">618&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,759&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,411)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">966&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Operating expenses:</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Research and development</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,734&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">133&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,890&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,757&#160;</span></td><td style="background-color:#dbdbdb;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 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">General and administrative</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">705&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">99&#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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,419&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,223&#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:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Sales and marketing</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">150&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">23&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">618&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">791&#160;</span></td><td style="background-color:#dbdbdb;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 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Depreciation and amortization</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">115&#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:'Montserrat',sans-serif;font-size:9pt;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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,590&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,705&#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:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,704&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">255&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">12,517&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">16,476&#160;</span></td><td style="background-color:#dbdbdb;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></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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Add back: Depreciation and amortization</span><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline">1</span></div></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">289&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#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="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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,392&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,681&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Segment EBITDA</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(2,797)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,504&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(11,536)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(12,829)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;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="border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td></tr><tr style="height:15pt"><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: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="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr></table></div><div style="margin-bottom:6pt;margin-top:5pt;text-align:center"><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:46.519%"></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:11.548%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.395%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.548%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.395%"></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:11.548%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.395%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.552%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="21" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Six months ended June 30, 2024</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">High-Pressure Controls &amp; Systems</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Heavy-Duty OEM</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cespira</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total Segment</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Revenue</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,049&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">22,488&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,059&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">32,596&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of revenue</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,413&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">22,307&#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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,901&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">30,621&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gross profit</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,636&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">181&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">158&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,975&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Operating expenses:</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Research and development</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,951&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,858&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,121&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,930&#160;</span></td><td style="background-color:#dbdbdb;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 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">General and administrative</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">496&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,919&#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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">715&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,130&#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:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Sales and marketing</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">362&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">849&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">69&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,280&#160;</span></td><td style="background-color:#dbdbdb;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 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Depreciation and amortization</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">85&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">121&#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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">265&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">471&#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:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,894&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,747&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,170&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">14,811&#160;</span></td><td style="background-color:#dbdbdb;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></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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Add back: Depreciation and amortization</span><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline">1</span></div></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">226&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,391&#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="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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">505&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,122&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Segment EBITDA</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(2,032)</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(7,175)</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,507)</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(10,714)</span></td><td style="background-color:#dbdbdb;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-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">16.          Segment information (continued):</span></div><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Reconciliations of reportable segment financial information to consolidated statement of operations:</span></div><div style="margin-top:5pt;text-align:justify"><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:38.373%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="width:1.0%"></td><td style="width:15.132%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="21" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Three months ended June 30, 2025</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total Segment</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Less: Cespira</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Add: Corporate &amp; unallocated</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total Consolidated</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Revenue</span></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">24,518&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">12,020&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">12,498&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of 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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">25,602&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">13,946&#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:'Montserrat',sans-serif;font-size:9pt;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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11,656&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gross profit</span></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,084)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,926)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">842&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Operating expenses:</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="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Research and development</span></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,545&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,888&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,657&#160;</span></td><td style="background-color:#dbdbdb;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 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">General and administrative</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,112&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,692&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,686&#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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,106&#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:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Sales and marketing</span></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">348&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">322&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">264&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">290&#160;</span></td><td style="background-color:#dbdbdb;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 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Depreciation and amortization</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">919&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">860&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">47&#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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">106&#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:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,924&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,762&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,997&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,159&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Equity income (loss)</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(3,686)</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="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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(3,686)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-bottom:6pt;margin-top:5pt;text-align:justify"><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:38.373%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="width:1.0%"></td><td style="width:15.132%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="21" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Three months ended June 30, 2024</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total Segment</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Less: Cespira</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Add: Corporate &amp; unallocated</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total Consolidated</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Revenue</span></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">18,168&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,059&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">14,109&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of 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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">15,651&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,901&#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:'Montserrat',sans-serif;font-size:9pt;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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11,750&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gross profit</span></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,517&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">158&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,359&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Operating expenses:</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="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Research and development</span></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,581&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,121&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,460&#160;</span></td><td style="background-color:#dbdbdb;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 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">General and administrative</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,174&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">715&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,261&#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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,720&#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:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Sales and marketing</span></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">551&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">69&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">480&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">962&#160;</span></td><td style="background-color:#dbdbdb;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 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Depreciation and amortization</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">312&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">265&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">51&#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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">98&#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:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,618&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,170&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,792&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">10,240&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Equity income (loss)</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,102)</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="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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,102)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-bottom:6pt;margin-top:5pt;text-align:justify"><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:38.373%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="width:1.0%"></td><td style="width:15.132%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="21" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Six months ended June 30, 2025</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total Segment</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Less: Cespira</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Add: Corporate &amp; unallocated</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total Consolidated</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Revenue</span></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">48,640&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">28,819&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">19,821&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of 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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">47,674&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">30,230&#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:'Montserrat',sans-serif;font-size:9pt;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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">17,444&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gross profit</span></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">966&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,411)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,377&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Operating expenses:</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="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Research and development</span></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,757&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,890&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,867&#160;</span></td><td style="background-color:#dbdbdb;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 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">General and administrative</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,223&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,419&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,974&#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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,778&#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:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Sales and marketing</span></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">791&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">618&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">560&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">733&#160;</span></td><td style="background-color:#dbdbdb;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 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Depreciation and amortization</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,705&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,590&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">99&#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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">214&#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:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">16,476&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">12,517&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,633&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">10,592&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Equity income (loss)</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(7,570)</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="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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(7,570)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-bottom:6pt;margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">16.          Segment information (continued):</span></div><div style="margin-bottom:6pt;margin-top:5pt;text-align:justify"><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:38.373%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="width:1.0%"></td><td style="width:15.132%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="21" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Six months ended June 30, 2024</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total Segment</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Less: Cespira</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Add: Corporate &amp; unallocated</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total Consolidated</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Revenue</span></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">32,596&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,059&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">28,537&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of 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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">30,621&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,901&#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:'Montserrat',sans-serif;font-size:9pt;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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">26,720&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gross profit</span></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,975&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">158&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,817&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Operating expenses:</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="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Research and development</span></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,930&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,121&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,809&#160;</span></td><td style="background-color:#dbdbdb;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 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">General and administrative</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,130&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">715&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,500&#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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">12,915&#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:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Sales and marketing</span></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,280&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">69&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">872&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,083&#160;</span></td><td style="background-color:#dbdbdb;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 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Depreciation and amortization</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">471&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">265&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">250&#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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">456&#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:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">14,811&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,170&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">10,622&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">23,263&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Equity income (loss)</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,102)</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="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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,102)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-bottom:6pt;margin-top:5pt;text-align:justify"><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:57.379%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.695%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.695%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.695%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.700%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Reconciliation of Segment EBITDA to Loss before income taxes</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Three months ended June 30,</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Six months ended June 30,</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2024</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total Segment EBITDA</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(8,087)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(4,478)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(12,829)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(10,714)</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Adjustments:</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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:6pt"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Depreciation and amortization</span><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline">1</span></div></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">196&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">169&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">388&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,867&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cespira's Segment EBITDA</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(6,916)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,507)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(11,536)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,507)</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:#dbdbdb;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Loss on investments accounted for under the equity method (note 8)</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,686&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,102&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,570&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,102&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Corporate and unallocated operating expenses</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,950&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,741&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,534&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">10,372&#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:#dbdbdb;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Foreign exchange (loss) gain</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(4,224)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(141)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(5,427)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,795&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gain on deconsolidation</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:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(13,266)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(13,266)</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:#dbdbdb;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest on long-term debt</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">166&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">288&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">358&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">603&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest and other income, net of bank charges</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">147&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(95)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(502)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(21)</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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Loss before income taxes in continuing operations</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(5,092)</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,231&#160;</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(10,214)</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(11,659)</span></td><td style="background-color:#dbdbdb;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:5.2pt;font-weight:400;line-height:120%;position:relative;top:-2.8pt;vertical-align:baseline">1</span><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:120%">Depreciation and amortization expenses used in computation for Segment EBITDA and reconciliation to consolidated loss before income taxes are included in cost of revenue and operating expenses on our statement of operations and comprehensive income (loss).</span></div><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">16.          Segment information (continued):</span></div><div style="margin-top:5pt;text-align:justify"><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:57.233%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.695%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.695%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.695%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.700%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Three months ended June 30,</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Six months ended June 30,</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Total additions to long-lived assets, excluding business combinations</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2024</span></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" 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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">High-Pressure Controls &amp; Systems</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">821&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">991&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">1,379&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">1,437&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Heavy-Duty OEM</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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">271&#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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">569&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Corporate and unallocated</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">1&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">16&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;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></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" 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></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Total consolidated</span></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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">822&#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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">1,262&#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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">1,395&#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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,006&#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="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Cespira's total additions to long-lived assets, excluding business combinations for the three and six months ended June 30, 2025 was $322 and $1,571, respectively (three and six months ended June 30, 2024 was $10).</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Revenues are attributable to geographical regions based on the location of the Company&#8217;s customers and are presented as a percentage of the Company's continuing revenues, as follows:</span></div><div style="margin-top:5pt"><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:39.835%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.935%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.935%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.935%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.940%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="21" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">% of revenue</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Three months ended June 30,</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Six months ended June 30,</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2024</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Europe</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">79&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">85&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">79&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">87&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Asia</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:'Montserrat',sans-serif;font-size:9.5pt;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"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">11&#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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">14&#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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;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"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Americas</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">5&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">4&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">7&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" 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></tr></table></div><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The measure of segment assets evaluated by the CODM are total assets as reported on the consolidated balance sheet. Total assets are allocated as follows</span><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:120%">:</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:60.393%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.385%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.640%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.385%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.497%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Total assets by segment</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"><span id="i8d100b17301b49a6a09a6daf522635dc_0-0-1-1-276174"></span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">June 30, 2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Light-Duty (Held-for-sale)</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">201,719&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">207,893&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">High-Pressure Controls &amp; Systems</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">14,112&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">9,026&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Heavy-Duty OEM</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">12,429&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">9,138&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Corporate</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">43,794&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">65,564&#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></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" 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></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Total consolidated assets</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">272,054&#160;</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">291,621&#160;</span></td><td style="background-color:#dbdbdb;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><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_SegmentReportingAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_SegmentReportingAbstract</td>
</tr>
<tr>
<td style="padding-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_SegmentReportingDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 reporting segments including data and tables. Reportable segments include those that meet any of the following quantitative thresholds a) it's reported revenue, including sales to external customers and intersegment sales or transfers is 10 percent or more of the combined revenue, internal and external, of all operating segments b) the absolute amount of its reported profit or loss is 10 percent or more of the greater, in absolute amount of 1) the combined reported profit of all operating segments that did not report a loss or 2) the combined reported loss of all operating segments that did report a loss c) its assets are 10 percent or more of the combined assets of all operating segments.</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> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 21<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-21<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 21<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-21<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-31<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-15<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 42<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-42<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 11: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 12: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 54<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-54<br><br>Reference 13: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 47<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-47<br><br>Reference 14: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 54<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-54<br><br>Reference 15: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 47<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-47<br><br>Reference 16: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 54<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-54<br><br>Reference 17: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 47<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-47<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 34<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-34<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 26C<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-26C<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 26B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-26B<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-40<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/280/tableOfContent<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 26<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-26<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-41<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentReportingDisclosureTextBlock</td>
</tr>
<tr>
<td style="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>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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Financial instruments<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2025</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_wprt_FinancialInstrumentsDisclosureAbstract', window );"><strong>Financial Instruments 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_FinancialInstrumentsDisclosureTextBlock', window );">Financial instruments</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">17.          Financial instruments:</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%"> </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Financial management risk</span></div><div style="text-align:justify"><span><br/></span></div><div><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company has exposure to liquidity risk, credit risk, foreign currency risk and interest rate risk.</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">17.          Financial Instruments (continued):</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Liquidity risk </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Liquidity risk is the risk that the Company will not be able to meet its financial obligations as they are due.&#160;The Company has a history of operating losses and negative cash flows from operations. At June&#160;30, 2025, the Company had $6,064 of cash and cash equivalents, including $397 in restricted cash.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following are the contractual maturities of financial obligations as at June&#160;30, 2025: </span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:33.599%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.709%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.759%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.709%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.709%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.709%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.714%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Carrying<br/>amount</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Contractual<br/>cash&#160;flows</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&lt;&#160;1&#160;year</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1-3&#160;years</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4-5&#160;years</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&gt;5&#160;years</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accounts payable and accrued liabilities</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">17,594&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">17,594&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">17,594&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;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></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Term loan facility (note 12)</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,882&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,601&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,576&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,025&#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:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;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></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" 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></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" 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></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Operating lease obligations (note 11)</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,965&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,870&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">336&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,203&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,038&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">293&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></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:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">24,441&#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:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">26,065&#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:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">22,506&#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:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,228&#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:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,038&#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:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">293&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Fair value of financial instruments</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As at June&#160;30, 2025, cash and cash equivalents are measured at fair value on a recurring basis and are included in Level 1.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The carrying amounts reported in the unaudited condensed consolidated interim balance sheets for accounts receivable, and accounts payable and accrued liabilities approximate their fair values due to the short-term period to maturity of these instruments.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The long-term investments represent the Company's interests in Cespira and is accounted for using the equity method.</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The carrying values reported in the condensed consolidated interim balance sheets for obligations under operating leases, which are based upon discounted cash flows, approximate their fair values.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The carrying value of the term loan facility included in long-term debt (note 12) is carried at amortized cost, which approximate its fair value as at June&#160;30, 2025.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company categorizes its fair value measurements for items measured at fair value on a recurring basis into three categories as follows:</span></div><div style="margin-top:5pt"><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:6.356%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.549%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:81.795%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-left:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Level 1 &#8211;</span></td><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unadjusted quoted prices in active markets for identical assets or liabilities.</span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-left:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-left:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Level 2 &#8211;</span></td><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Observable inputs other than Level 1 prices, such as quoted prices for similar assets or liabilities; quoted prices in markets that are not active; or other inputs that are observable or can be corroborated by observable market data for substantially the full term of the assets or liabilities.</span></td></tr><tr><td colspan="3" style="border-left:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-left:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="border-bottom:1pt solid #ffffff;border-left:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-bottom:1pt solid #ffffff;border-left:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Level 3 &#8211;</span></td><td colspan="3" style="border-bottom:1pt solid #ffffff;border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:justify;vertical-align:top"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Inputs for the asset or liability that are not based on observable market data (unobservable inputs).</span></td></tr></table></div><div><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">When available, the Company uses quoted market prices to determine fair value and classify such items in Level 1.&#160; When necessary, Level 2 valuations are performed based on quoted market prices for similar instruments in active markets and/or model&#8211;derived valuations with inputs that are observable in active markets.&#160; Level 3 valuations are undertaken in the absence of reliable Level 1 or Level 2 information.</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_FinancialInstrumentsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 financial instruments. This disclosure includes, but is not limited to, fair value measurements of short and long term marketable securities, international currencies forward contracts, and auction rate securities. Financial instruments may include hedging and non-hedging currency exchange instruments, derivatives, securitizations and securities available for sale at fair value. Also included are investment results, realized and unrealized gains and losses as well as impairments and risk management disclosures.</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> -Topic 825<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/825/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinancialInstrumentsDisclosureTextBlock</td>
</tr>
<tr>
<td style="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_wprt_FinancialInstrumentsDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">wprt_FinancialInstrumentsDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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>32
<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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Basis of preparation (Policies)<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2025</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">Basis of presentation:<div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:117%">The interim financial statements have been prepared by the Company and do not include all of the information and disclosures required by accounting principles generally accepted in the United States ("GAAP"). In the opinion of management, all normal recurring accruals and adjustments considered necessary for a fair presentation have been included. The results for the three and six months ended June 30, 2025 are not necessarily indicative of the results that may be expected for the year ending December&#160;31, 2025. The interim financial statements should be read in conjunction with the audited consolidated financial statements and notes to the consolidated financial statements for the year ended December&#160;31, 2024.</span></div><div><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:118%">The preparation of financial statements in conformity with GAAP requires management to make estimates and assumptions that affect the amounts reported in the interim financial statements and accompanying notes. Actual results could differ from those estimates. Certain prior period figures have been adjusted to conform to current period presentation in the interim financial statements.</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_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock', window );">Foreign currency translation</a></td>
<td class="text">Foreign currency translation:<div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company&#8217;s functional currency is the Canadian dollar and its reporting currency for its interim financial statement presentation is the United States dollar ("U.S. Dollar"). The functional currencies for the Company's significant subsidiaries include the following: U.S. Dollar, Canadian dollar, Euro, Argentina Peso, Chinese Renminbi (&#8220;RMB&#8221;) and Polish Zloty. The Company translates assets and liabilities of non-U.S. dollar functional currency operations using the period end exchange rates,&#160;shareholders&#8217; equity balances using the weighted average of historical exchange rates, and revenues and expenses using the monthly average rate for the period with the&#160;resulting exchange differences&#160;recognized in other comprehensive income (loss).&#160;</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Transactions that are denominated in currencies other than the functional currencies of the Company&#8217;s or its subsidiaries' operations are translated at the rates in effect on the date of the transaction.&#160;Foreign currency denominated monetary assets and liabilities are translated to the applicable functional currency&#160;at the exchange rates in effect on the balance sheet date. Non-monetary assets and liabilities are translated at the historical exchange rate. All foreign exchange gains and losses are recognized in the condensed consolidated interim statements of operations, except for the translation gains and losses arising from available-for-sale instruments, which are recorded through other comprehensive income (loss) until realized through disposal or impairment.</span></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_wprt_HeldForSaleDisposalGroupAndDiscontinuedOperationsPolicyPolicyTextBlock', window );">Held-for-sale disposal group and discontinued operations</a></td>
<td class="text">Held-for-sale disposal group and discontinued operations:<div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company classifies a component of an entity as a held-for-sale disposal group when it has been disposed of during the period, or it has met all of the held-for-sale criteria under </span><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Topic 205 - Presentation of Financial Statements</span><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> at the balance sheet reporting date. Held-for-sale disposal groups are measured at the lower of its carrying amount and fair value less cost to sell. If the fair value less cost to sell is lower than its carrying amount, a loss is recognized to write down the carrying amount of the disposal group as a whole.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">After a disposal group has been classified as held-for-sale, management may decide to reverse its plan to divest, or circumstances may change so that the disposal group no longer meets the held-for-sale criteria. In such instances, the Company would reclassify the disposal group's assets and liabilities on the balance sheet as held-and-used and remeasure the assets on the date of reclassification.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A component that has been disposed of or is held-for-sale is reported in discontinued operations if its disposition represents a strategic shift and has (or will have) a major effect on the entity's operations and financial results. Discontinued operations are reported separately from the Company's continuing operations on the balance sheet, income statement, and statement of cash flows. For comparative purposes, the Company adjusted the prior periods presented in the interim financial statements to reflect the effect of operations discontinued in the current period. The Company's interim financial statements eliminated its intercompany balances with its discontinued operations as the intercompany balances will be settled upon disposal.</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 );">Upcoming accounting standards not yet adopted</a></td>
<td class="text"><div style="margin-bottom:6pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Upcoming accounting standards not yet adopted:</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In December 2023, the FASB issued ASU 2023-09, "Income Taxes (Topic 740): Improvements in Income Tax Disclosures" to enhance the transparency and decision usefulness of income tax disclosures. This amendment requires public companies to disclose specific categories in the rate reconciliation and provide additional information for reconciling items that meet a quantitative threshold. Additionally, under the amendment entities are required to disclose the amount of income taxes paid disaggregated by federal, state and foreign taxes, as well as disaggregated by material individual jurisdictions. Finally, the amendment requires entities to disclose income from continuing operations before income tax expense disaggregated between domestic and foreign and income tax expense from continuing operations disaggregated by federal, state and foreign. This guidance is effective for annual reporting periods beginning after December 15, 2024. While this guidance may have an impact on the disclosures, the Company does not expect this guidance to have a material impact on its  financial position, operations, and cash flows.</span></div><div><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In November 2024, the FASB issued ASU 2024-03, "Income Statement - Reporting Comprehensive Income - Expense Disaggregation Disclosures (Subtopic 220-40): Disaggregation of Income Statement Expenses." It requires entities to disclose, in the notes to the financial statements, specified information related to certain costs and expenses disaggregated by type. The standard improves transparency by providing more detailed information about the component of costs and expenses that would enable users to better understand the major components of an entity's income statement by referencing disclosures in the notes to financial statements. This guidance is effective for annual reporting periods beginning after December 15, 2026. While this guidance may have an impact on the disclosures, the Company does not expect this guidance to have a material impact on its  financial position, operations, and cash flows.</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>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483426/235-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 (1) transactions denominated in a currency other than the reporting enterprise's functional currency, (2) translating foreign currency financial statements that are incorporated into the financial statements of the reporting enterprise by consolidation, combination, or the equity method of accounting, and (3) remeasurement of the financial statements of a foreign reporting enterprise in a hyperinflationary economy.</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> -Topic 830<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/830/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock</td>
</tr>
<tr>
<td style="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_wprt_HeldForSaleDisposalGroupAndDiscontinuedOperationsPolicyPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Held-For-Sale Disposal Group And Discontinued Operations, Policy</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;">wprt_HeldForSaleDisposalGroupAndDiscontinuedOperationsPolicyPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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>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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Basis of preparation (Tables)<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2025</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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_wprt_ScheduleOfForeignCurrencyExchangeRateTranslationTableTextBlock', window );">Schedule of Foreign Currency Exchange Rate Translation</a></td>
<td class="text">For the periods presented, the Company used the following exchange rates:<div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"><tr><td style="width:1.0%"></td><td style="width:20.339%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.381%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.381%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.381%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.381%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.381%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.386%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Period&#160;ended</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Average for the three months ended</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Average for the six months ended</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">June 30, 2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">December 31, 2024</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">June 30, 2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">June 30, 2024</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">June 30, 2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">June 30, 2024</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Canadian Dollar</span></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.36&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.44&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.38&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.37&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.41&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.37&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Euro</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.85&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.96&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.88&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.93&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.91&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.93&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">RMB</span></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7.17&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7.30&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7.23&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7.24&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7.25&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7.25&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Polish Zloty</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.61&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.12&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.75&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.99&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.87&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.01&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Swedish Krona</span></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9.49&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11.03&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9.66&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.68&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.13&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.49&#160;</span></td><td style="background-color:#dbdbdb;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></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Indian Rupee</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">85.75&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">85.60&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">85.56&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">83.42&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">86.09&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">83.48&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Argentina Peso</span></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,192.11&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,032.12&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,145.65&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">885.31&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,098.03&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">903.40&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></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_wprt_ScheduleOfForeignCurrencyExchangeRateTranslationTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Schedule Of Foreign Currency Exchange Rate Translation</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;">wprt_ScheduleOfForeignCurrencyExchangeRateTranslationTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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>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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Held-for-sale disposal group and discontinued operations (Tables)<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2025</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_DiscontinuedOperationsAndDisposalGroupsAbstract', window );"><strong>Discontinued Operations and Disposal Groups [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_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock', window );">Schedule of Discontinued Operations</a></td>
<td class="text"><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Major assets and liabilities of the discontinued operations are as follows:</span></div><div style="text-align:justify"><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:60.303%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.613%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.616%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">June 30, 2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Cash</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">15,319&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">22,892&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Accounts receivable</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">67,947&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">54,316&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Inventories</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">53,383&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">46,858&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Prepaid expenses</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">5,772&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">4,332&#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:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">142,421&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">128,398&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Long-term investments</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">3,331&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,866&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Property, plant, and equipment</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">43,775&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">38,836&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Operating lease right-of-use asset</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">21,744&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">18,196&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Intangible assets</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">5,179&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">5,184&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Deferred income tax assets</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">10,196&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">9,695&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Goodwill</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">3,257&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,876&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Other long-term assets</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">1,999&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">1,842&#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:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">89,481&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">79,495&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Valuation allowance from classifying the discontinued operations as held-for-sale</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(30,183)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Total assets classified as held for sale</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">201,719&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">207,893&#160;</span></td><td style="background-color:#dbdbdb;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;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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Accounts payable and accrued liabilities</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">78,048&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">68,688&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Current portion of operating lease liabilities</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,703&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,336&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Current portion of long-term debt</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">9,763&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">10,755&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Current portion of warranty liabilities</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">3,416&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,709&#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:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">93,930&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">84,488&#160;</span></td><td style="background-color:#dbdbdb;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></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Long-term operating lease liabilities</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">19,170&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">15,885&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Long-term debt</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">14,487&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">16,135&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Warranty liabilities</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">1,888&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">1,456&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Deferred income tax liabilities</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">3,588&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">4,029&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Other long-term liabilities</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">3,114&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,955&#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:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">42,247&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">40,460&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Total liabilities classified as held for sale</span></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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">136,177&#160;</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 #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">124,948&#160;</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></tr></table></div><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:400;line-height:112%">5.          Assets and liabilities held for sale (continued):</span></div><div style="margin-top:5pt;text-align:justify"><span><br/></span></div><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:112%">Revenue and expenses of the discontinued operation are as follows:</span></div><div style="margin-top:5pt;text-align:justify"><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:53.870%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.572%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.572%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.572%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.578%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Three Months Ended June 30,</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Six Months Ended June 30,</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2024</span></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Revenue</span></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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">76,372&#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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">69,277&#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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">140,004&#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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">132,423&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Cost of revenue</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">61,219&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">54,514&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">111,160&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">105,395&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Gross profit</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">15,153&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">14,763&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">28,844&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">27,028&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Operating expenses:</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Research and development</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,979&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">3,100&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">5,738&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">6,444&#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:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">General and administrative</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">3,756&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">5,883&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">7,481&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">9,041&#160;</span></td><td style="background-color:#dbdbdb;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 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Sales and marketing</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,854&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,478&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">5,169&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">4,644&#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:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Foreign exchange loss</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">1,862&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">198&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,609&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">82&#160;</span></td><td style="background-color:#dbdbdb;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 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Depreciation and amortization</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">646&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">622&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">1,279&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">1,307&#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:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">12,097&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">12,281&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">22,276&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">21,518&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Income from discontinued operations</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">3,056&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,482&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">6,568&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">5,510&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Income from investment accounted for by the equity method</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">387&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">414&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">472&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">445&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Loss from classifying the discontinued operations as held-for-sale</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(30,183)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(30,183)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Impairment of long-lived assets</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(664)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(664)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Interest on long-term debt</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(391)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(438)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(875)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(935)</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Interest and other income (loss), net of bank charges</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">133&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">88&#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:'Montserrat',sans-serif;font-size:9.5pt;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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">503&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Income (loss) from discontinued operations before income tax</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(27,662)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,546&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(24,329)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">5,523&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Income tax expense</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">1,629&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">875&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,118&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">1,479&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Net income (loss) from discontinued operations</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(29,291)</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">1,671&#160;</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(26,447)</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">4,044&#160;</span></td><td style="background-color:#dbdbdb;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><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_DiscontinuedOperationsAndDisposalGroupsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DiscontinuedOperationsAndDisposalGroupsAbstract</td>
</tr>
<tr>
<td style="padding-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_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 information related to a disposal group. Includes, but is not limited to, a discontinued operation, disposal classified as held-for-sale or disposed of by means other than sale or disposal of an individually significant component.</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> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -SubTopic 10<br> -Topic 360<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-3<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3A<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-3A<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3A<br> -Subparagraph (b)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-3A<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-11<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-3A<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-4A<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-4B<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5A<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5B<br><br>Reference 10: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5C<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5C<br><br>Reference 11: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5D<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5D<br><br>Reference 12: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 13: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-3A<br><br>Reference 14: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 20<br> -Topic 205<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-1<br><br>Reference 15: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock</td>
</tr>
<tr>
<td style="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>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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accounts receivable (Tables)<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2025</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_ReceivablesAbstract', window );"><strong>Receivables [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_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock', window );">Schedule of Accounts Receivable</a></td>
<td class="text"><div style="margin-top:5pt"><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:60.303%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.613%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.616%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">June 30, 2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Customer trade receivables</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,916&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,513&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Holdback receivable</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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">10,737&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Other receivables</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">1,728&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">887&#160;</span></td><td style="background-color:#dbdbdb;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></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Due from related parties (note 14)</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">12,505&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">4,973&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Allowance for expected credit losses</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(569)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(372)</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">16,580&#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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">18,738&#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><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_ReceivablesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ReceivablesAbstract</td>
</tr>
<tr>
<td style="padding-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_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 various types of trade accounts and notes receivable and for each the gross carrying value, allowance, and net carrying value as of the balance sheet date. Presentation is categorized by current, noncurrent and unclassified receivables.</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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-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;">us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock</td>
</tr>
<tr>
<td style="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>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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Inventories (Tables)<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2025</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 Inventories</a></td>
<td class="text"><div style="margin-top:5pt"><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:60.303%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.613%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.616%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">June 30, 2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Purchased parts</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,341&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">5,463&#160;</span></td><td style="background-color:#dbdbdb;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></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Finished goods</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">515&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">1,205&#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></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,856&#160;</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">6,668&#160;</span></td><td style="background-color:#dbdbdb;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><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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(c))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 210<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483489/210-10-50-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;">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>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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Long-term investments (Tables)<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2025</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_InvestmentsDebtAndEquitySecuritiesAbstract', window );"><strong>Investments, Debt and Equity Securities [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_EquityMethodInvestmentsTextBlock', window );">Schedule of Long-Term Investments</a></td>
<td class="text"><div style="margin-top:5pt"><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:60.303%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.613%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.616%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">June 30, 2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Cespira Canada LP</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">24,263&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">25,494&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Cespira Sweden AB</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">12,859&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">11,225&#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></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" 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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Other equity-accounted investees</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">147&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">37,122&#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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">36,866&#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><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Combined assets, liabilities, revenue and expenses of Cespira, are as follows:</span></div><div style="margin-top:5pt;text-align:justify"><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:61.180%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.174%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.178%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">June 30,</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">December 31, </span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2024</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash and cash equivalents</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,010&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,305&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts receivable</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25,068&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,000&#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:#dbdbdb;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Inventories</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,512&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,414&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Prepaid expenses</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,376&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,471&#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:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">53,966&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">40,190&#160;</span></td><td style="background-color:#dbdbdb;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></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property, plant and equipment</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">41,409&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">40,901&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Intangible assets</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,215&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,087&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">595&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">563&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferred tax assets</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">102&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total assets</span></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:'Montserrat',sans-serif;font-size:10pt;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">103,287&#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:'Montserrat',sans-serif;font-size:10pt;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">88,741&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current liabilities:</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;border-top:3pt double #000;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts payable</span></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:'Montserrat',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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,680&#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:'Montserrat',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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,527&#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:#dbdbdb;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current portion of provisions</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,826&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,128&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other current liabilities</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,800&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,910&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;&#160;&#160;Deferred income tax liabilities</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">197&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">29,503&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,565&#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></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-term portion of provisions</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">456&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">532&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other long-term liabilities</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">290&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">569&#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></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" 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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total liabilities</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,249&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,666&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net assets</span></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:'Montserrat',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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">73,038&#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:'Montserrat',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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">67,075&#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-top:5pt;text-align:justify"><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:38.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.519%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.519%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.519%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.526%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Three Months Ended June 30,</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Six Months Ended June 30,</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2024</span></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" 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></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Revenue</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,020&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,059&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">28,819&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,059&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost of revenue</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,946&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,901&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,230&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,901&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gross profit</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,926)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">158&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,411)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">158&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="21" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating expenses:</span></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:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Research and development</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,888&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,121&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,890&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,121&#160;</span></td><td style="background-color:#dbdbdb;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 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">General and administrative</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,692&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">715&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,419&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">715&#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:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Sales and marketing</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">322&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">69&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">618&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">69&#160;</span></td><td style="background-color:#dbdbdb;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 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign exchange gain</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(845)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(88)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',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:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Depreciation and amortization</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">860&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">265&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,590&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">265&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,917&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,170&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,429&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,170&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Loss from operations</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(6,843)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,012)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(13,840)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,012)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest income, net of bank charges</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25&#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:'Montserrat',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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32&#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:'Montserrat',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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Loss before income taxes</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(6,818)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,012)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(13,808)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,012)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income tax (recovery) expense</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(72)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',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"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',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></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net loss</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(6,746)</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,016)</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(13,744)</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,016)</span></td><td style="background-color:#dbdbdb;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><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_EquityMethodInvestmentsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 equity method investments including, but not limited to, name of each investee or group of investments, percentage ownership, difference between recorded amount of an investment and the value of the underlying equity in the net assets, and summarized financial 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> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EquityMethodInvestmentsTextBlock</td>
</tr>
<tr>
<td style="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_InvestmentsDebtAndEquitySecuritiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_InvestmentsDebtAndEquitySecuritiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>38
<FILENAME>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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Property, plant and equipment (Tables)<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2025</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, Plant and Equipment</a></td>
<td class="text"><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:55.478%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.788%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.788%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.794%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Accumulated</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Net&#160;Book</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">June 30, 2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Cost</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Depreciation</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Value</span></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Computer equipment and software</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,976&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,799&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">177&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Furniture and fixtures</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,013&#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:'Montserrat',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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">632&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Machinery and equipment</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,942&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,527&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,415&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Leasehold improvements</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,306&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,086&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">220&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,237&#160;</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,793&#160;</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,444&#160;</span></td><td style="background-color:#dbdbdb;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><div><span><br/></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:55.478%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.788%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.788%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.794%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Accumulated</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Net Book</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">December 31, 2024</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Cost</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Depreciation</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Value</span></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Computer equipment and software</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,945&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,575&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">370&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Furniture and fixtures</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">861&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">309&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">552&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Machinery and equipment</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,464&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,488&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,976&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Leasehold improvements</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,064&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,842&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">222&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,334&#160;</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,214&#160;</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,120&#160;</span></td><td style="background-color:#dbdbdb;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><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> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 360<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-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;">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>39
<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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accounts payable and accrued liabilities (Tables)<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2025</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_PayablesAndAccrualsAbstract', window );"><strong>Payables and Accruals [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_ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock', window );">Accounts Payable and Accrued Liabilities</a></td>
<td class="text"><div style="margin-top:5pt"><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:60.303%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.613%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.616%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">June 30, 2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Trade accounts payable</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">8,190&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">11,397&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Accrued payroll</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">3,261&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,555&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Taxes payable</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">3,812&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">3,813&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Deferred revenue</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">330&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">533&#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></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" 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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Due to related parties (note 14)</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,001&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">1,137&#160;</span></td><td style="background-color:#dbdbdb;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></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">17,594&#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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">19,435&#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><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_PayablesAndAccrualsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_PayablesAndAccrualsAbstract</td>
</tr>
<tr>
<td style="padding-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_ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 (a) 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 (accounts payable); (b) other payables; and (c) accrued liabilities. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer). An alternative caption includes accrued expenses.</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_ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock</td>
</tr>
<tr>
<td style="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>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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Operating leases right-of-use assets and lease liabilities (Tables)<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2025</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 );">Component of Lease Cost</a></td>
<td class="text"><div style="margin-top:7.5pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The components of lease cost are as follows:</span></div><div style="margin-top:5pt;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:39.835%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.935%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.935%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.935%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.940%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Three months ended June 30,</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Six months ended June 30,</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2024</span></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" 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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amortization of right-of-use assets</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">95&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">188&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">185&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">323&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14&#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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">44&#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></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" 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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total lease cost</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">101&#160;</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">209&#160;</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">199&#160;</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">367&#160;</span></td><td style="background-color:#dbdbdb;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><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 );">Maturities of Lease Liabilities</a></td>
<td class="text"><div style="margin-top:7.5pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The maturities of lease liabilities as at June&#160;30, 2025 are as follows:</span></div><div style="margin-top:5pt;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:80.186%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.884%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" 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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">The remainder of 2025</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">336&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2026</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">595&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2027</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">608&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2028</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">551&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2029</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">487&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Thereafter</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">293&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total undiscounted cash flows</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,870&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: imputed interest</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">905&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Present value of operating lease liabilities</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,965&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: current portion</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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">633&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-term operating lease liabilities</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,332&#160;</span></td><td style="background-color:#dbdbdb;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><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_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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>41
<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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Long-term debt (Tables)<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2025</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_ScheduleOfDebtInstrumentsTextBlock', window );">Schedule of Long-term Debt Instruments</a></td>
<td class="text"><div style="margin-top:5pt"><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:26.531%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></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:1.0%"></td><td style="width:17.613%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.616%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Term loan facility</span></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Maturity date</span></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Interest rate</span></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">June 30, 2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">EDC</span></td><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">September 15, 2026</span></td><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">U.S. Prime Rate plus 2.01%</span></div></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">4,882&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">6,837&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;&#160;&#160;Current portion</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="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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">3,905&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">3,905&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;&#160;&#160;Long-term portion</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">977&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,932&#160;</span></td><td style="background-color:#dbdbdb;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></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" 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="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" 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="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" 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="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="6" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Term loan facilities, net of debt issuance costs</span></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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">4,882&#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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">6,837&#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><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_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock', window );">Schedule of Maturities of Long-term Debt</a></td>
<td class="text"><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The principal repayment schedule of long-term debt is as follows as at June&#160;30, 2025: </span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.976%"><tr><td style="width:1.0%"></td><td style="width:78.663%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.538%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:18.399%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" 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:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Term loan facility</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" 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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Remainder of 2025</span></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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">1,953&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" 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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2026</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,929&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" 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></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" 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></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td 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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">4,882&#160;</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="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display: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><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_ScheduleOfDebtInstrumentsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 long-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 entity, 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> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -SubTopic 10<br> -Topic 210<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-2<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-4<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-3<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481568/470-20-55-69B<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69E<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481568/470-20-55-69E<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482925/835-30-45-2<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-3<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 470<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477734/942-470-50-3<br><br>Reference 10: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-8<br><br>Reference 11: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-6<br><br>Reference 12: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfDebtInstrumentsTextBlock</td>
</tr>
<tr>
<td style="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_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 maturity and sinking fund requirement for long-term 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> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 470<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481544/470-10-50-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;">us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock</td>
</tr>
<tr>
<td style="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>42
<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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Share capital, stock options and other stock-based plans (Tables)<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2025</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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract', window );"><strong>Share-Based Payment Arrangement [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_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock', window );">Schedule of Share-based Compensation, Stock Options, Activity</a></td>
<td class="text"><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A continuity of the Units issued under the Westport Omnibus Plan are as follows:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"><tr><td style="width:1.0%"></td><td style="width:31.939%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.905%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.905%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.905%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.910%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Six months ended June 30, 2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Six months ended June 30, 2024</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Number&#160;of<br/>Units</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Weighted<br/>average<br/>grant<br/>date&#160;fair<br/>value<br/>(CDN&#160;$)</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Number&#160;of<br/>Units</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Weighted<br/>average<br/>grant<br/>date&#160;fair<br/>value<br/>(CDN&#160;$)</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Outstanding, beginning of period</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">524,322&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11.75&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">478,643&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">15.68&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Granted</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">137,151&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3.99&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">169,835&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8.56&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Exercised</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(68,071)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">17.48&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(83,862)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">17.93&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Forfeited/expired</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(117,296)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11.36&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(38,406)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">26.07&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Outstanding, end of period</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">476,106&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8.78&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">526,210&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">12.23&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Units outstanding and exercisable, end of period</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">491&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #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:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">31.07&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #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-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">15,052&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #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:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11.41&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_wprt_ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardIntrinsicValueTableTextBlock', window );">Schedule of Share Based Compensation Arrangement by Share Based Payment Award Intrinsic Value</a></td>
<td class="text"><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The aggregate intrinsic value of the Company&#8217;s share units at June&#160;30, 2025 as follows: </span></div><div style="margin-top:5pt"><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:79.016%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:18.054%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">June 30, 2025</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">(CDN $)</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Share units:</span></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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Outstanding</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,578&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Exercisable</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">15&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Exercised</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">285&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></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_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock', window );">Schedule of Employee Service Share-based Compensation, Allocation of Recognized Period Costs</a></td>
<td class="text"><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Stock-based compensation associated with the Unit plans is included in operating expenses as follows:</span></div><div style="margin-top:5pt"><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:38.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.373%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.373%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.373%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.380%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Three Months Ended June 30,</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Six Months Ended June 30,</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2024</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Cost of revenue</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">36&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">77&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Research and development</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">15&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">53&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">28&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">163&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">General and administrative</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">433&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">945&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">680&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">1,144&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Sales and marketing</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;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"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">28&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">108&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">451&#160;</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">1,083&#160;</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">736&#160;</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">1,492&#160;</span></td><td style="background-color:#dbdbdb;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><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-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;">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> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)<br> -SubTopic 10<br> -Topic 718<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)<br> -SubTopic 10<br> -Topic 718<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-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;">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_wprt_ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardIntrinsicValueTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 intrinsic value of stock option awards and share units.</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;">wprt_ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardIntrinsicValueTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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>43
<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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Related party transactions (Tables)<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2025</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_ScheduleOfRelatedPartyTransactionsTableTextBlock', window );">Schedule of Related Party Transactions</a></td>
<td class="text"><div style="margin-bottom:6pt;margin-top:6pt;text-align:justify"><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:39.250%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.373%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.373%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.373%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.379%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Related party transactions with Cespira</span></td><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Three months ended June 30,</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Six months ended June 30,</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2024</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Sales of goods, services, and other income</span></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,721&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">534&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,280&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">534&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Inventory purchased, services and other expenses</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,898&#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:'Montserrat',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></table></div><div style="margin-bottom:6pt;margin-top:6pt;text-align:justify"><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:60.888%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.613%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.615%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Related party balances with Cespira</span></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">June 30, 2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Receivables (note 6)</span></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,505&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,973&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Payables (note 10)</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,001&#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:'Montserrat',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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,137&#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></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_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_ScheduleOfRelatedPartyTransactionsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 related party transactions. Examples of related party transactions include, but are not limited to, 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/2009/role/commonPracticeRef<br> -Topic 850<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483326/850-10-50-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 850<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483326/850-10-50-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;">us-gaap_ScheduleOfRelatedPartyTransactionsTableTextBlock</td>
</tr>
<tr>
<td style="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>44
<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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Segment information (Tables)<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2025</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_SegmentReportingAbstract', window );"><strong>Segment Reporting [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_ScheduleOfSegmentReportingInformationBySegmentTextBlock', window );">Schedule of Segment Reporting Information</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Financial information by reportable segment as follows: </span></div><div style="margin-top:5pt;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:47.438%"></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:11.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></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:11.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.332%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="21" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Three months ended June 30, 2025</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">High-Pressure Controls &amp; Systems</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Heavy-Duty OEM</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cespira</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total Segment</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Revenue</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,896&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,602&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">12,020&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">24,518&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of revenue</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,791&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,865&#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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">13,946&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">25,602&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gross profit</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">105&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">737&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,926)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,084)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Operating expenses:</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Research and development</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,635&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">22&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,888&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,545&#160;</span></td><td style="background-color:#dbdbdb;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 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">General and administrative</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">386&#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:'Montserrat',sans-serif;font-size:9pt;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><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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,692&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,112&#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:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Sales and marketing</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">23&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">322&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">348&#160;</span></td><td style="background-color:#dbdbdb;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 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Depreciation and amortization</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">59&#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:'Montserrat',sans-serif;font-size:9pt;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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">860&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">919&#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:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,103&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">59&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,762&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,924&#160;</span></td><td style="background-color:#dbdbdb;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></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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Add back: Depreciation and amortization</span><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline">1</span></div></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">149&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#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="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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">772&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">921&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Segment EBITDA</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,849)</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">678&#160;</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(6,916)</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(8,087)</span></td><td style="background-color:#dbdbdb;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:6pt;margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"><tr><td style="width:1.0%"></td><td style="width:47.211%"></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:11.381%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.387%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.381%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.387%"></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:11.381%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.387%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.385%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="21" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Three months ended June 30, 2024</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">High-Pressure Controls &amp; Systems</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Heavy-Duty OEM</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cespira</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total Segment</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Revenue</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,562&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">10,547&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,059&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">18,168&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of revenue</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,453&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,297&#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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,901&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">15,651&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gross profit</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,109&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,250&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">158&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,517&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Operating expenses:</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Research and development</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,408&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,052&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,121&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,581&#160;</span></td><td style="background-color:#dbdbdb;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 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">General and administrative</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">303&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,156&#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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">715&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,174&#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:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Sales and marketing</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">130&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">352&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">69&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">551&#160;</span></td><td style="background-color:#dbdbdb;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 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Depreciation and amortization</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">43&#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:'Montserrat',sans-serif;font-size:9pt;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><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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">265&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">312&#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:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,884&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,564&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,170&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,618&#160;</span></td><td style="background-color:#dbdbdb;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></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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Add back: Depreciation and amortization</span><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline">1</span></div></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">118&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#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="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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">505&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">623&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Segment EBITDA</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(657)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(2,314)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,507)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(4,478)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;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="border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td></tr><tr style="height:15pt"><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: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="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr></table></div><div><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">16.          Segment information (continued):</span></div><div><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:96.637%"><tr><td style="width:1.0%"></td><td style="width:45.647%"></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:11.759%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.405%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.759%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.405%"></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:11.759%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.405%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.761%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="21" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Six months ended June 30, 2025</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">High-Pressure Controls &amp; Systems</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Heavy-Duty OEM</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cespira</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total Segment</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Revenue</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,786&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">15,035&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">28,819&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">48,640&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of revenue</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,168&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">13,276&#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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">30,230&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">47,674&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gross profit</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">618&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,759&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,411)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">966&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Operating expenses:</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Research and development</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,734&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">133&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,890&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,757&#160;</span></td><td style="background-color:#dbdbdb;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 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">General and administrative</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">705&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">99&#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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,419&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,223&#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:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Sales and marketing</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">150&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">23&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">618&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">791&#160;</span></td><td style="background-color:#dbdbdb;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 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Depreciation and amortization</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">115&#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:'Montserrat',sans-serif;font-size:9pt;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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,590&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,705&#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:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,704&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">255&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">12,517&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">16,476&#160;</span></td><td style="background-color:#dbdbdb;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></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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Add back: Depreciation and amortization</span><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline">1</span></div></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">289&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#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="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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,392&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,681&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Segment EBITDA</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(2,797)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,504&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(11,536)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(12,829)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;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="border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td></tr><tr style="height:15pt"><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: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="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr></table></div><div style="margin-bottom:6pt;margin-top:5pt;text-align:center"><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:46.519%"></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:11.548%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.395%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.548%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.395%"></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:11.548%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.395%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.552%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="21" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Six months ended June 30, 2024</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">High-Pressure Controls &amp; Systems</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Heavy-Duty OEM</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cespira</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total Segment</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Revenue</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,049&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">22,488&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,059&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">32,596&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of revenue</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,413&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">22,307&#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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,901&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">30,621&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gross profit</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,636&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">181&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">158&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,975&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Operating expenses:</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Research and development</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,951&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,858&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,121&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,930&#160;</span></td><td style="background-color:#dbdbdb;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 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">General and administrative</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">496&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,919&#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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">715&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,130&#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:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Sales and marketing</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">362&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">849&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">69&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,280&#160;</span></td><td style="background-color:#dbdbdb;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 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Depreciation and amortization</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">85&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">121&#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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">265&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">471&#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:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,894&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,747&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,170&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">14,811&#160;</span></td><td style="background-color:#dbdbdb;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></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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Add back: Depreciation and amortization</span><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline">1</span></div></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">226&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,391&#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="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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">505&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,122&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Segment EBITDA</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(2,032)</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(7,175)</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,507)</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(10,714)</span></td><td style="background-color:#dbdbdb;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-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">16.          Segment information (continued):</span></div><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Reconciliations of reportable segment financial information to consolidated statement of operations:</span></div><div style="margin-top:5pt;text-align:justify"><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:38.373%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="width:1.0%"></td><td style="width:15.132%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="21" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Three months ended June 30, 2025</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total Segment</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Less: Cespira</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Add: Corporate &amp; unallocated</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total Consolidated</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Revenue</span></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">24,518&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">12,020&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">12,498&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of 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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">25,602&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">13,946&#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:'Montserrat',sans-serif;font-size:9pt;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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11,656&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gross profit</span></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,084)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,926)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">842&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Operating expenses:</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="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Research and development</span></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,545&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,888&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,657&#160;</span></td><td style="background-color:#dbdbdb;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 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">General and administrative</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,112&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,692&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,686&#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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,106&#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:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Sales and marketing</span></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">348&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">322&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">264&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">290&#160;</span></td><td style="background-color:#dbdbdb;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 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Depreciation and amortization</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">919&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">860&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">47&#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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">106&#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:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,924&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,762&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,997&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,159&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Equity income (loss)</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(3,686)</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="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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(3,686)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-bottom:6pt;margin-top:5pt;text-align:justify"><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:38.373%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="width:1.0%"></td><td style="width:15.132%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="21" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Three months ended June 30, 2024</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total Segment</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Less: Cespira</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Add: Corporate &amp; unallocated</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total Consolidated</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Revenue</span></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">18,168&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,059&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">14,109&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of 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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">15,651&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,901&#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:'Montserrat',sans-serif;font-size:9pt;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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11,750&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gross profit</span></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,517&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">158&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,359&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Operating expenses:</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="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Research and development</span></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,581&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,121&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,460&#160;</span></td><td style="background-color:#dbdbdb;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 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">General and administrative</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,174&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">715&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,261&#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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,720&#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:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Sales and marketing</span></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">551&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">69&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">480&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">962&#160;</span></td><td style="background-color:#dbdbdb;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 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Depreciation and amortization</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">312&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">265&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">51&#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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">98&#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:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,618&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,170&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,792&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">10,240&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Equity income (loss)</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,102)</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="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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,102)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-bottom:6pt;margin-top:5pt;text-align:justify"><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:38.373%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="width:1.0%"></td><td style="width:15.132%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="21" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Six months ended June 30, 2025</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total Segment</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Less: Cespira</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Add: Corporate &amp; unallocated</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total Consolidated</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Revenue</span></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">48,640&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">28,819&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">19,821&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of 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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">47,674&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">30,230&#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:'Montserrat',sans-serif;font-size:9pt;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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">17,444&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gross profit</span></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">966&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,411)</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,377&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Operating expenses:</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="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Research and development</span></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,757&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,890&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,867&#160;</span></td><td style="background-color:#dbdbdb;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 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">General and administrative</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,223&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,419&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,974&#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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,778&#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:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Sales and marketing</span></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">791&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">618&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">560&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">733&#160;</span></td><td style="background-color:#dbdbdb;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 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Depreciation and amortization</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,705&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,590&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">99&#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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">214&#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:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">16,476&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">12,517&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,633&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">10,592&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Equity income (loss)</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(7,570)</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="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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(7,570)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-bottom:6pt;margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%">16.          Segment information (continued):</span></div><div style="margin-bottom:6pt;margin-top:5pt;text-align:justify"><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:38.373%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="width:1.0%"></td><td style="width:15.132%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="21" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Six months ended June 30, 2024</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total Segment</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Less: Cespira</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Add: Corporate &amp; unallocated</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total Consolidated</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Revenue</span></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">32,596&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,059&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">28,537&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of 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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">30,621&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,901&#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:'Montserrat',sans-serif;font-size:9pt;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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">26,720&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gross profit</span></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,975&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">158&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,817&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Operating expenses:</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="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Research and development</span></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,930&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,121&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,809&#160;</span></td><td style="background-color:#dbdbdb;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 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">General and administrative</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,130&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">715&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,500&#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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">12,915&#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:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Sales and marketing</span></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,280&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">69&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">872&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,083&#160;</span></td><td style="background-color:#dbdbdb;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 5.5pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Depreciation and amortization</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">471&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">265&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">250&#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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">456&#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:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">14,811&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,170&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">10,622&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">23,263&#160;</span></td><td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Equity income (loss)</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,102)</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="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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,102)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-bottom:6pt;margin-top:5pt;text-align:justify"><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:57.379%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.695%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.695%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.695%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.700%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Reconciliation of Segment EBITDA to Loss before income taxes</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Three months ended June 30,</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Six months ended June 30,</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2024</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total Segment EBITDA</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(8,087)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(4,478)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(12,829)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(10,714)</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Adjustments:</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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:6pt"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Depreciation and amortization</span><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline">1</span></div></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">196&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">169&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">388&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,867&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cespira's Segment EBITDA</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(6,916)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,507)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(11,536)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,507)</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:#dbdbdb;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Loss on investments accounted for under the equity method (note 8)</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,686&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,102&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,570&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,102&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Corporate and unallocated operating expenses</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,950&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,741&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,534&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">10,372&#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:#dbdbdb;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Foreign exchange (loss) gain</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(4,224)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(141)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(5,427)</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,795&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gain on deconsolidation</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:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(13,266)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(13,266)</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:#dbdbdb;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest on long-term debt</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">166&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">288&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">358&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">603&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest and other income, net of bank charges</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">147&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(95)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(502)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(21)</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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Loss before income taxes in continuing operations</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(5,092)</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,231&#160;</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(10,214)</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(11,659)</span></td><td style="background-color:#dbdbdb;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:5.2pt;font-weight:400;line-height:120%;position:relative;top:-2.8pt;vertical-align:baseline">1</span><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:120%">Depreciation and amortization expenses used in computation for Segment EBITDA and reconciliation to consolidated loss before income taxes are included in cost of revenue and operating expenses on our statement of operations and comprehensive income (loss).</span></div><div style="margin-top:5pt;text-align:justify"><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:57.233%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.695%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.695%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.695%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.700%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Three months ended June 30,</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Six months ended June 30,</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Total additions to long-lived assets, excluding business combinations</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2024</span></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" 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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">High-Pressure Controls &amp; Systems</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">821&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">991&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">1,379&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">1,437&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Heavy-Duty OEM</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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">271&#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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">569&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Corporate and unallocated</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">1&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">16&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;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></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" 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></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Total consolidated</span></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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">822&#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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">1,262&#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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">1,395&#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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2,006&#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><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_wprt_ScheduleOfGeographicalRevenueInformationTableTextBlock', window );">Schedule of Geographical Revenue Information</a></td>
<td class="text"><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Revenues are attributable to geographical regions based on the location of the Company&#8217;s customers and are presented as a percentage of the Company's continuing revenues, as follows:</span></div><div style="margin-top:5pt"><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:39.835%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.935%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.935%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.935%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.940%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="21" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">% of revenue</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Three months ended June 30,</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Six months ended June 30,</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">2024</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Europe</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">79&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">85&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">79&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">87&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Asia</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:'Montserrat',sans-serif;font-size:9.5pt;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"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">11&#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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">14&#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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;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"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Americas</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">5&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">4&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">7&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" 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></tr></table></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_wprt_ScheduleOfAllocationOfTotalAssetsTableTextBlock', window );">Schedule of Allocation of the Total Assets</a></td>
<td class="text"><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The measure of segment assets evaluated by the CODM are total assets as reported on the consolidated balance sheet. Total assets are allocated as follows</span><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:120%">:</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:60.393%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.385%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.640%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.385%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.497%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Total assets by segment</span></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"><span id="i8d100b17301b49a6a09a6daf522635dc_0-0-1-1-276174"></span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">June 30, 2025</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Light-Duty (Held-for-sale)</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">201,719&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">207,893&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">High-Pressure Controls &amp; Systems</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">14,112&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">9,026&#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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Heavy-Duty OEM</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">12,429&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">9,138&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Corporate</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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">43,794&#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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">65,564&#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></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" 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></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">Total consolidated assets</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">272,054&#160;</span></td><td style="background-color:#dbdbdb;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:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%">291,621&#160;</span></td><td style="background-color:#dbdbdb;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><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_ScheduleOfSegmentReportingInformationBySegmentTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 profit or loss and total assets for each reportable segment. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss.</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> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 25<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-25<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock</td>
</tr>
<tr>
<td style="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_SegmentReportingAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_SegmentReportingAbstract</td>
</tr>
<tr>
<td style="padding-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_wprt_ScheduleOfAllocationOfTotalAssetsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 total assets allocated the reportable segments.</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;">wprt_ScheduleOfAllocationOfTotalAssetsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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_wprt_ScheduleOfGeographicalRevenueInformationTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 the company to provide geographical revenue information by individual countries.</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;">wprt_ScheduleOfGeographicalRevenueInformationTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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>45
<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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Financial instruments (Tables)<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2025</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_wprt_FinancialInstrumentsDisclosureAbstract', window );"><strong>Financial Instruments 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_srt_ContractualObligationFiscalYearMaturityScheduleTableTextBlock', window );">Contractual Obligation, Fiscal Year Maturity Schedule</a></td>
<td class="text"><div style="text-align:justify"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following are the contractual maturities of financial obligations as at June&#160;30, 2025: </span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:33.599%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.709%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.759%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.709%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.709%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.709%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.714%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Carrying<br/>amount</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Contractual<br/>cash&#160;flows</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&lt;&#160;1&#160;year</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1-3&#160;years</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4-5&#160;years</span></td><td colspan="3" style="background-color:#252f6d;padding:0 1pt"></td><td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&gt;5&#160;years</span></td></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accounts payable and accrued liabilities</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">17,594&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">17,594&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">17,594&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#dbdbdb;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></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Term loan facility (note 12)</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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,882&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,601&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,576&#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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,025&#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:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;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></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" 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></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" 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></tr><tr><td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Operating lease obligations (note 11)</span></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,965&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,870&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">336&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,203&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,038&#160;</span></td><td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"></td><td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">293&#160;</span></td><td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></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:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">24,441&#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:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">26,065&#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:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">22,506&#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:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,228&#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:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,038&#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:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%">293&#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><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ContractualObligationFiscalYearMaturityScheduleTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 contractual obligation by timing of payment due. Includes, but is not limited to, long-term debt obligation, lease obligation, and purchase 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/2009/role/commonPracticeRef<br> -Name Regulation S-X (SX)<br> -Number 210<br> -Section 12<br> -Subsection 04<br> -Subparagraph (a)<br> -Publisher SEC<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-2<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-4<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ContractualObligationFiscalYearMaturityScheduleTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>srt_</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_wprt_FinancialInstrumentsDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">wprt_FinancialInstrumentsDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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>46
<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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Company organization and operations (Details)<br></strong></div></th>
<th class="th"><div>Jun. 30, 2025</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_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=wprt_CespiraJointVentureMember', window );">Cespira Joint Venture</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_ScheduleOfEquityMethodInvestmentsLineItems', window );"><strong>Schedule of Equity Method Investments [Line Items]</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_EquityMethodInvestmentOwnershipPercentage', window );">Equity method investment, ownership percentage</a></td>
<td class="nump">55.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_EquityMethodInvestmentOwnershipPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 percentage of ownership of common stock or equity participation in the investee accounted for under the equity method of accounting.</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> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EquityMethodInvestmentOwnershipPercentage</td>
</tr>
<tr>
<td style="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_ScheduleOfEquityMethodInvestmentsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfEquityMethodInvestmentsLineItems</td>
</tr>
<tr>
<td style="padding-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_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=wprt_CespiraJointVentureMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=wprt_CespiraJointVentureMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>47
<FILENAME>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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Liquidity and Going Concern (Details)<br> &#8364; in Thousands, shares in Thousands, $ 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">6 Months Ended</th>
<th class="th" colspan="2"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th">
<div>Sep. 13, 2024 </div>
<div>shares</div>
</th>
<th class="th">
<div>Jun. 30, 2025 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Jun. 30, 2024 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Jun. 30, 2025 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Jun. 30, 2024 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Jul. 29, 2025 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Jul. 29, 2025 </div>
<div>EUR (&#8364;)</div>
</th>
<th class="th">
<div>Dec. 31, 2024 </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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Operating losses</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,010<span></span>
</td>
<td class="nump">$ 7,740<span></span>
</td>
<td class="nump">$ 2,788<span></span>
</td>
<td class="nump">$ 23,241<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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 and cash equivalents</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">6,064<span></span>
</td>
<td class="nump">$ 13,474<span></span>
</td>
<td class="nump">6,064<span></span>
</td>
<td class="nump">$ 13,474<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 14,754<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtLongtermAndShorttermCombinedAmount', window );">Long-term debt</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,882<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,882<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_LongTermDebtAndCapitalLeaseObligationsCurrent', window );">Current portion of long-term debt</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,905<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,905<span></span>
</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,905<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_wprt_DebtInstrumentCovenantMinimumCashRequirement', window );">Minimum cash requirement</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">15,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">15,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesTreasuryStockReissued', window );">Treasury stock reissued (in shares) | shares</a></td>
<td class="nump">35,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="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisposalGroupClassificationAxis=us-gaap_DiscontinuedOperationsHeldforsaleMember', window );">Discontinued Operations, Held-for-Sale</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents', window );">Cash and cash equivalents classified as held for sale</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">21,383<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">21,383<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_DisposalGroupClassificationAxis=us-gaap_DiscontinuedOperationsHeldforsaleMember', window );">Discontinued Operations, Held-for-Sale | Light-Duty</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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>
<td class="text">&#160;<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_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents', window );">Cash and cash equivalents classified as held for sale</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 15,319<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 15,319<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 22,892<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 | Discontinued Operations, Disposed of by Sale | Light-Duty</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration', window );">Net proceeds from sale</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">$ 62,513<span></span>
</td>
<td class="nump">&#8364; 53,600<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_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 equivalent, and cash and cash equivalent restricted to withdrawal or usage; attributable to continuing operation. Cash includes, but is not limited to, currency on hand, demand deposit with financial institution, and account with general characteristic of demand deposit. Cash equivalent includes, but is not limited to, short-term, highly liquid investment that is both readily convertible to known amount of cash and so near maturity that it presents insignificant risk of change in value because of change in interest rate.</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> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-8<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-24<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_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>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-8A<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-2<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-4<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-3<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(f))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482949/835-30-55-8<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481568/470-20-55-69B<br><br>Reference 10: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69C<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481568/470-20-55-69C<br><br>Reference 11: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69E<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481568/470-20-55-69E<br><br>Reference 12: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69F<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481568/470-20-55-69F<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 15: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1D<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1D<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1D<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1D<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1D<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1D<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1E<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1E<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1E<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1F<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1F<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1F<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1F<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1F<br> -Subparagraph (b)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1F<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1F<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1F<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1I<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1I<br><br>Reference 30: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482925/835-30-45-2<br><br>Reference 31: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482900/835-30-50-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;">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_DebtLongtermAndShorttermCombinedAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Represents the aggregate of total long-term debt, including current maturities and short-term 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;">us-gaap_DebtLongtermAndShorttermCombinedAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 cash and cash equivalents 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> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -SubTopic 20<br> -Topic 205<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-10<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5B<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-3<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-11<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DisposalGroupIncludingDiscontinuedOperationConsideration">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 consideration received or receivable for the disposal of assets and liabilities, including discontinued operation.</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_DisposalGroupIncludingDiscontinuedOperationConsideration</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_LongTermDebtAndCapitalLeaseObligationsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 long-term debt and lease obligation, classified as current.</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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-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;">us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-4<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-14<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-31<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_StockIssuedDuringPeriodSharesTreasuryStockReissued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 treasury shares or units reissued. Excludes reissuance of shares or units in treasury 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> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-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;">us-gaap_StockIssuedDuringPeriodSharesTreasuryStockReissued</td>
</tr>
<tr>
<td style="padding-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_wprt_DebtInstrumentCovenantMinimumCashRequirement">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, Covenant, Minimum Cash Requirement</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;">wprt_DebtInstrumentCovenantMinimumCashRequirement</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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_DisposalGroupClassificationAxis=us-gaap_DiscontinuedOperationsHeldforsaleMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DisposalGroupClassificationAxis=us-gaap_DiscontinuedOperationsHeldforsaleMember</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_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis=wprt_LightDutyMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis=wprt_LightDutyMember</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_DisposalGroupClassificationAxis=us-gaap_DiscontinuedOperationsDisposedOfBySaleMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DisposalGroupClassificationAxis=us-gaap_DiscontinuedOperationsDisposedOfBySaleMember</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>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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Basis of preparation (Details)<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Dec. 31, 2024</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_CurrencyAxis=currency_CAD', window );">Canadian Dollar</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_wprt_ScheduleOfForeignCurrencyLineItems', window );"><strong>Schedule of Foreign Currency [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_ForeignCurrencyExchangeRateTranslation1', window );">Foreign current exchange rate at period end</a></td>
<td class="nump">1.36<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1.36<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1.44<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_wprt_AverageForeignCurrencyExchangeRateTranslation1', window );">Average foreign currency exchange rate</a></td>
<td class="nump">1.38<span></span>
</td>
<td class="nump">1.37<span></span>
</td>
<td class="nump">1.41<span></span>
</td>
<td class="nump">1.37<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_CurrencyAxis=currency_EUR', window );">Euro</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_wprt_ScheduleOfForeignCurrencyLineItems', window );"><strong>Schedule of Foreign Currency [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_ForeignCurrencyExchangeRateTranslation1', window );">Foreign current exchange rate at period end</a></td>
<td class="nump">0.85<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0.85<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0.96<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_wprt_AverageForeignCurrencyExchangeRateTranslation1', window );">Average foreign currency exchange rate</a></td>
<td class="nump">0.88<span></span>
</td>
<td class="nump">0.93<span></span>
</td>
<td class="nump">0.91<span></span>
</td>
<td class="nump">0.93<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_CurrencyAxis=currency_CNY', window );">RMB</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_wprt_ScheduleOfForeignCurrencyLineItems', window );"><strong>Schedule of Foreign Currency [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_ForeignCurrencyExchangeRateTranslation1', window );">Foreign current exchange rate at period end</a></td>
<td class="nump">7.17<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">7.17<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">7.30<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_wprt_AverageForeignCurrencyExchangeRateTranslation1', window );">Average foreign currency exchange rate</a></td>
<td class="nump">7.23<span></span>
</td>
<td class="nump">7.24<span></span>
</td>
<td class="nump">7.25<span></span>
</td>
<td class="nump">7.25<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_CurrencyAxis=currency_PLN', window );">Polish Zloty</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_wprt_ScheduleOfForeignCurrencyLineItems', window );"><strong>Schedule of Foreign Currency [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_ForeignCurrencyExchangeRateTranslation1', window );">Foreign current exchange rate at period end</a></td>
<td class="nump">3.61<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3.61<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4.12<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_wprt_AverageForeignCurrencyExchangeRateTranslation1', window );">Average foreign currency exchange rate</a></td>
<td class="nump">3.75<span></span>
</td>
<td class="nump">3.99<span></span>
</td>
<td class="nump">3.87<span></span>
</td>
<td class="nump">4.01<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_CurrencyAxis=currency_SEK', window );">Swedish Krona</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_wprt_ScheduleOfForeignCurrencyLineItems', window );"><strong>Schedule of Foreign Currency [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_ForeignCurrencyExchangeRateTranslation1', window );">Foreign current exchange rate at period end</a></td>
<td class="nump">9.49<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">9.49<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">11.03<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_wprt_AverageForeignCurrencyExchangeRateTranslation1', window );">Average foreign currency exchange rate</a></td>
<td class="nump">9.66<span></span>
</td>
<td class="nump">10.68<span></span>
</td>
<td class="nump">10.13<span></span>
</td>
<td class="nump">10.49<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_CurrencyAxis=currency_INR', window );">Indian Rupee</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_wprt_ScheduleOfForeignCurrencyLineItems', window );"><strong>Schedule of Foreign Currency [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_ForeignCurrencyExchangeRateTranslation1', window );">Foreign current exchange rate at period end</a></td>
<td class="nump">85.75<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">85.75<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">85.60<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_wprt_AverageForeignCurrencyExchangeRateTranslation1', window );">Average foreign currency exchange rate</a></td>
<td class="nump">85.56<span></span>
</td>
<td class="nump">83.42<span></span>
</td>
<td class="nump">86.09<span></span>
</td>
<td class="nump">83.48<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_CurrencyAxis=currency_ARS', window );">Argentina Peso</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_wprt_ScheduleOfForeignCurrencyLineItems', window );"><strong>Schedule of Foreign Currency [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_ForeignCurrencyExchangeRateTranslation1', window );">Foreign current exchange rate at period end</a></td>
<td class="nump">1,192.11<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,192.11<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,032.12<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_wprt_AverageForeignCurrencyExchangeRateTranslation1', window );">Average foreign currency exchange rate</a></td>
<td class="nump">1,145.65<span></span>
</td>
<td class="nump">885.31<span></span>
</td>
<td class="nump">1,098.03<span></span>
</td>
<td class="nump">903.40<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_ForeignCurrencyExchangeRateTranslation1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Foreign exchange rate used to translate amounts denominated in functional currency to reporting currency.</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> -Topic 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481674/830-30-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479424/830-30-S99-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;">us-gaap_ForeignCurrencyExchangeRateTranslation1</td>
</tr>
<tr>
<td style="padding-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>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_wprt_AverageForeignCurrencyExchangeRateTranslation1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Average foreign exchange rate used to translate amounts denominated in functional currency to reporting currency.</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;">wprt_AverageForeignCurrencyExchangeRateTranslation1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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_wprt_ScheduleOfForeignCurrencyLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Schedule of Foreign Currency [Line Items]</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;">wprt_ScheduleOfForeignCurrencyLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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_CurrencyAxis=currency_CAD">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CurrencyAxis=currency_CAD</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_CurrencyAxis=currency_EUR">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CurrencyAxis=currency_EUR</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_CurrencyAxis=currency_CNY">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CurrencyAxis=currency_CNY</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_CurrencyAxis=currency_PLN">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CurrencyAxis=currency_PLN</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_CurrencyAxis=currency_SEK">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CurrencyAxis=currency_SEK</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_CurrencyAxis=currency_INR">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CurrencyAxis=currency_INR</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_CurrencyAxis=currency_ARS">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CurrencyAxis=currency_ARS</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>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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Held-for-sale disposal group and discontinued operations - Narrative (Details)<br> &#8364; in Thousands, $ in Thousands</strong></div></th>
<th class="th" colspan="2"></th>
<th class="th" colspan="2">1 Months Ended</th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="2"></th>
</tr>
<tr>
<th class="th">
<div>Jul. 29, 2025 </div>
<div>USD ($) </div>
<div>tranche</div>
</th>
<th class="th">
<div>Jul. 29, 2025 </div>
<div>EUR (&#8364;)</div>
</th>
<th class="th">
<div>Sep. 30, 2025 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Sep. 30, 2025 </div>
<div>EUR (&#8364;)</div>
</th>
<th class="th">
<div>Jun. 30, 2025 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Jun. 30, 2024 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Jun. 30, 2025 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Jun. 30, 2024 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Jul. 29, 2025 </div>
<div>EUR (&#8364;) </div>
<div>tranche</div>
</th>
<th class="th">
<div>Jul. 14, 2025 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Jul. 14, 2025 </div>
<div>EUR (&#8364;)</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_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember', window );">Subsequent Event | Loans Payable</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems', window );"><strong>Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [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>
</tr>
<tr class="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 );">Face amount of 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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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,831<span></span>
</td>
<td class="nump">&#8364; 5,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisposalGroupClassificationAxis=us-gaap_DiscontinuedOperationsHeldforsaleMember', window );">Discontinued Operations, Held-for-Sale | Light-Duty</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems', window );"><strong>Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax', window );">Loss from classifying the discontinued operations as held-for-sale</a></td>
<td class="text">&#160;<span></span>
</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,183<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 30,183<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_wprt_DisposalGroupIncludingDiscontinuedOperationAdditionsToLongLivedAssets', window );">Additions to long-lived assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,620<span></span>
</td>
<td class="nump">$ 4,176<span></span>
</td>
<td class="nump">$ 3,926<span></span>
</td>
<td class="nump">$ 8,325<span></span>
</td>
<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_DisposalGroupClassificationAxis=us-gaap_DiscontinuedOperationsDisposedOfBySaleMember', window );">Discontinued Operations, Disposed of by Sale | Light-Duty | 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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems', window );"><strong>Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration', window );">Net proceeds from sale</a></td>
<td class="nump">$ 62,513<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">&#8364; 53,600<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_ProceedsFromDivestitureOfBusinesses', window );">Cash proceeds from sale</a></td>
<td class="nump">41,170<span></span>
</td>
<td class="nump">&#8364; 35,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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_wprt_DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrow', window );">Consideration held in escrow</a></td>
<td class="nump">12,829<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">&#8364; 11,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_wprt_DisposalGroupIncludingDiscontinuedOperationEarnoutsMaximum', window );">Maximum potential earnouts</a></td>
<td class="nump">$ 3,790<span></span>
</td>
<td class="nump">&#8364; 3,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>
<td class="text">&#160;<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_wprt_DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrowNumberOfTranches', window );">Number of tranches for consideration held in escrow | tranche</a></td>
<td class="nump">4<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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<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_DisposalGroupClassificationAxis=us-gaap_DiscontinuedOperationsDisposedOfBySaleMember', window );">Discontinued Operations, Disposed of by Sale | Light-Duty | Subsequent Event | Forecast</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems', window );"><strong>Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromDivestitureOfBusinesses', window );">Cash proceeds from sale</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 8,514<span></span>
</td>
<td class="nump">&#8364; 7,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>
<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_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/exampleRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482949/835-30-55-8<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481568/470-20-55-69B<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69C<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481568/470-20-55-69C<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482900/835-30-50-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482925/835-30-45-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;">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_DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 tax of (gain) loss recognized for the (reversal of write-down) write-down to fair value, less cost to sell, of a 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> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-3B<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DisposalGroupIncludingDiscontinuedOperationConsideration">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 consideration received or receivable for the disposal of assets and liabilities, including discontinued operation.</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_DisposalGroupIncludingDiscontinuedOperationConsideration</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3A<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-3A<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3A<br> -Subparagraph (b)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-3A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems</td>
</tr>
<tr>
<td style="padding-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_ProceedsFromDivestitureOfBusinesses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 the sale of a portion of the company's business, for example a segment, division, branch or other business, 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> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-12<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromDivestitureOfBusinesses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_wprt_DisposalGroupIncludingDiscontinuedOperationAdditionsToLongLivedAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disposal Group, Including Discontinued Operation, Additions To Long-Lived 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;">wprt_DisposalGroupIncludingDiscontinuedOperationAdditionsToLongLivedAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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_wprt_DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrow">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disposal Group, Including Discontinued Operation, Consideration Held In Escrow</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;">wprt_DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrow</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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_wprt_DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrowNumberOfTranches">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disposal Group, Including Discontinued Operation, Consideration Held In Escrow, Number Of Tranches</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;">wprt_DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrowNumberOfTranches</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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_wprt_DisposalGroupIncludingDiscontinuedOperationEarnoutsMaximum">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disposal Group, Including Discontinued Operation, Earnouts, Maximum</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;">wprt_DisposalGroupIncludingDiscontinuedOperationEarnoutsMaximum</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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_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_ShortTermDebtTypeAxis=us-gaap_LoansPayableMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ShortTermDebtTypeAxis=us-gaap_LoansPayableMember</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_DisposalGroupClassificationAxis=us-gaap_DiscontinuedOperationsHeldforsaleMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DisposalGroupClassificationAxis=us-gaap_DiscontinuedOperationsHeldforsaleMember</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_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis=wprt_LightDutyMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis=wprt_LightDutyMember</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_DisposalGroupClassificationAxis=us-gaap_DiscontinuedOperationsDisposedOfBySaleMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DisposalGroupClassificationAxis=us-gaap_DiscontinuedOperationsDisposedOfBySaleMember</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>50
<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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Held-for-sale disposal group and discontinued operations - Assets and Liabilities of the Discontinued Operations (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Dec. 31, 2024</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_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems', window );"><strong>Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent', window );">Current assets classified as held for sale</a></td>
<td class="nump">$ 201,719<span></span>
</td>
<td class="nump">$ 128,398<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_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent', window );">Long-term assets classified as held for sale</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">79,495<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_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent', window );">Current liabilities classified as held for sale</a></td>
<td class="nump">136,177<span></span>
</td>
<td class="nump">84,488<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_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent', window );">Noncurrent liabilities classified as held for sale</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">40,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_us-gaap_DisposalGroupClassificationAxis=us-gaap_DiscontinuedOperationsHeldforsaleMember', window );">Discontinued Operations, Held-for-Sale</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_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems', window );"><strong>Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [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_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents', window );">Cash</a></td>
<td class="nump">21,383<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_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis=wprt_LightDutyMember', window );">Light-Duty | Discontinued Operations, Held-for-Sale</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_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems', window );"><strong>Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [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_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents', window );">Cash</a></td>
<td class="nump">15,319<span></span>
</td>
<td class="nump">22,892<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet', window );">Accounts receivable</a></td>
<td class="nump">67,947<span></span>
</td>
<td class="nump">54,316<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_DisposalGroupIncludingDiscontinuedOperationInventoryCurrent', window );">Inventories</a></td>
<td class="nump">53,383<span></span>
</td>
<td class="nump">46,858<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent', window );">Prepaid expenses</a></td>
<td class="nump">5,772<span></span>
</td>
<td class="nump">4,332<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_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent', window );">Current assets classified as held for sale</a></td>
<td class="nump">142,421<span></span>
</td>
<td class="nump">128,398<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_wprt_DisposalGroupIncludingDiscontinuedOperationInvestmentsNoncurrent', window );">Long-term investments</a></td>
<td class="nump">3,331<span></span>
</td>
<td class="nump">2,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_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent', window );">Property, plant, and equipment</a></td>
<td class="nump">43,775<span></span>
</td>
<td class="nump">38,836<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_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAssetNoncurrent', window );">Operating lease right-of-use asset</a></td>
<td class="nump">21,744<span></span>
</td>
<td class="nump">18,196<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_DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent', window );">Intangible assets</a></td>
<td class="nump">5,179<span></span>
</td>
<td class="nump">5,184<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisposalGroupIncludingDiscontinuedOperationDeferredTaxAssets', window );">Deferred income tax assets</a></td>
<td class="nump">10,196<span></span>
</td>
<td class="nump">9,695<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_DisposalGroupIncludingDiscontinuedOperationGoodwillNoncurrent', window );">Goodwill</a></td>
<td class="nump">3,257<span></span>
</td>
<td class="nump">2,876<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets', window );">Other long-term assets</a></td>
<td class="nump">1,999<span></span>
</td>
<td class="nump">1,842<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_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent', window );">Long-term assets classified as held for sale</a></td>
<td class="nump">89,481<span></span>
</td>
<td class="nump">79,495<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_wprt_DisposalGroupIncludingDiscontinuedOperationValuationAllowance', window );">Valuation allowance from classifying the discontinued operations as held-for-sale</a></td>
<td class="num">(30,183)<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_AssetsOfDisposalGroupIncludingDiscontinuedOperation', window );">Total assets classified as held for sale</a></td>
<td class="nump">201,719<span></span>
</td>
<td class="nump">207,893<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsPayableAndAccruedLiabilitiesCurrent', window );">Accounts payable and accrued liabilities</a></td>
<td class="nump">78,048<span></span>
</td>
<td class="nump">68,688<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_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityCurrent', window );">Current portion of operating lease liabilities</a></td>
<td class="nump">2,703<span></span>
</td>
<td class="nump">2,336<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_wprt_DisposalGroupIncludingDiscontinuedOperationLongTermDebtCurrent', window );">Current portion of long-term debt</a></td>
<td class="nump">9,763<span></span>
</td>
<td class="nump">10,755<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_wprt_DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualCurrent', window );">Current portion of warranty liabilities</a></td>
<td class="nump">3,416<span></span>
</td>
<td class="nump">2,709<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_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent', window );">Current liabilities classified as held for sale</a></td>
<td class="nump">93,930<span></span>
</td>
<td class="nump">84,488<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_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent', window );">Long-term operating lease liabilities</a></td>
<td class="nump">19,170<span></span>
</td>
<td class="nump">15,885<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_wprt_DisposalGroupIncludingDiscontinuedOperationLongTermDebtNoncurrent', window );">Long-term debt</a></td>
<td class="nump">14,487<span></span>
</td>
<td class="nump">16,135<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_wprt_DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualNoncurrent', window );">Warranty liabilities</a></td>
<td class="nump">1,888<span></span>
</td>
<td class="nump">1,456<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisposalGroupIncludingDiscontinuedOperationDeferredTaxLiabilities', window );">Deferred income tax liabilities</a></td>
<td class="nump">3,588<span></span>
</td>
<td class="nump">4,029<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_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentLiabilities', window );">Other long-term liabilities</a></td>
<td class="nump">3,114<span></span>
</td>
<td class="nump">2,955<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_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent', window );">Noncurrent liabilities classified as held for sale</a></td>
<td class="nump">42,247<span></span>
</td>
<td class="nump">40,460<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_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation', window );">Total liabilities classified as held for sale</a></td>
<td class="nump">$ 136,177<span></span>
</td>
<td class="nump">$ 124,948<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_AssetsOfDisposalGroupIncludingDiscontinuedOperation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 assets 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> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -SubTopic 20<br> -Topic 205<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-10<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5C<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5C<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5B<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-3<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-11<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 assets attributable to disposal group held for sale or disposed of, expected to be disposed of 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> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -SubTopic 20<br> -Topic 205<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-10<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5C<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5C<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482130/360-10-45-9<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5B<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-3<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-11<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 accounts, notes and loans receivable 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> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -SubTopic 20<br> -Topic 205<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-10<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5B<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-3<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-11<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DisposalGroupIncludingDiscontinuedOperationAccountsPayableAndAccruedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 accounts payable and accrued liabilities attributable to disposal group held for sale or disposed of, expected to be disposed of 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> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -SubTopic 20<br> -Topic 205<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-10<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482130/360-10-45-9<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5B<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-3<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-11<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsPayableAndAccruedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 assets attributable to disposal group held for sale or disposed of, expected to be disposed of after 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> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -SubTopic 20<br> -Topic 205<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-10<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -SubTopic 10<br> -Topic 360<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482130/360-10-45-11<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5C<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5C<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5B<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-3<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-11<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 cash and cash equivalents 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> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -SubTopic 20<br> -Topic 205<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-10<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5B<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-3<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-11<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DisposalGroupIncludingDiscontinuedOperationDeferredTaxAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 deferred tax assets 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> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -SubTopic 20<br> -Topic 205<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-10<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5B<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-3<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-11<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupIncludingDiscontinuedOperationDeferredTaxAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DisposalGroupIncludingDiscontinuedOperationDeferredTaxLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 deferred tax liabilities 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> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -SubTopic 20<br> -Topic 205<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-10<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5B<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-3<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-11<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupIncludingDiscontinuedOperationDeferredTaxLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DisposalGroupIncludingDiscontinuedOperationGoodwillNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 goodwill attributable to disposal group held for sale or disposed of, expected to be disposed of after 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> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -SubTopic 20<br> -Topic 205<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-10<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -SubTopic 10<br> -Topic 360<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482130/360-10-45-11<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5B<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-3<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-11<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupIncludingDiscontinuedOperationGoodwillNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 intangible assets, excluding goodwill, attributable to disposal group held for sale or disposed of, expected to be disposed of beyond 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> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -SubTopic 20<br> -Topic 205<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-10<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -SubTopic 10<br> -Topic 360<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482130/360-10-45-11<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5B<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-3<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-11<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DisposalGroupIncludingDiscontinuedOperationInventoryCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, expected to be disposed of 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> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -SubTopic 20<br> -Topic 205<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-10<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482130/360-10-45-9<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5B<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-3<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-11<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupIncludingDiscontinuedOperationInventoryCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 other assets attributable to disposal group held for sale or disposed of, expected to be disposed of after 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> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -SubTopic 20<br> -Topic 205<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-10<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -SubTopic 10<br> -Topic 360<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482130/360-10-45-11<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5B<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-3<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-11<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 other liabilities attributable to disposal group held for sale or disposed of, expected to be disposed of beyond 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> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -SubTopic 20<br> -Topic 205<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-10<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -SubTopic 10<br> -Topic 360<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482130/360-10-45-11<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5B<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-3<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-11<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 prepaid and other assets attributable to disposal group held for sale or disposed of, expected to be disposed of 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> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -SubTopic 20<br> -Topic 205<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-10<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482130/360-10-45-9<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5B<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-3<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-11<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 property, plant and equipment attributable to disposal group held for sale or disposed of, expected to be disposed of after 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> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -SubTopic 20<br> -Topic 205<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-10<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -SubTopic 10<br> -Topic 360<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482130/360-10-45-11<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5B<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-3<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-11<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3A<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-3A<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3A<br> -Subparagraph (b)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-3A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems</td>
</tr>
<tr>
<td style="padding-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_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 liabilities 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> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -SubTopic 20<br> -Topic 205<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-10<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5C<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5C<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5B<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-3<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-11<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 liabilities attributable to disposal group held for sale or disposed of, expected to be disposed of 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> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -SubTopic 20<br> -Topic 205<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-10<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5C<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5C<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482130/360-10-45-9<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5B<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-3<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-11<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 liabilities attributable to disposal group held for sale or disposed of, expected to be disposed of beyond 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> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -SubTopic 20<br> -Topic 205<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-10<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -SubTopic 10<br> -Topic 360<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482130/360-10-45-11<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5C<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5C<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5B<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-3<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-11<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_wprt_DisposalGroupIncludingDiscontinuedOperationInvestmentsNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disposal Group, Including Discontinued Operation, Investments, Noncurrent</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;">wprt_DisposalGroupIncludingDiscontinuedOperationInvestmentsNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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_wprt_DisposalGroupIncludingDiscontinuedOperationLongTermDebtCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disposal Group, Including Discontinued Operation, Long-Term Debt, 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;">wprt_DisposalGroupIncludingDiscontinuedOperationLongTermDebtCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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_wprt_DisposalGroupIncludingDiscontinuedOperationLongTermDebtNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disposal Group, Including Discontinued Operation, Long-Term Debt, Noncurrent</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;">wprt_DisposalGroupIncludingDiscontinuedOperationLongTermDebtNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disposal Group, Including Discontinued Operation, Operating Lease, Liability, 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;">wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disposal Group, Including Discontinued Operation, Operating Lease, Liability, Noncurrent</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;">wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAssetNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disposal Group, Including Discontinued Operation, Operating Lease, Right-Of-Use Asset, Noncurrent</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;">wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAssetNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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_wprt_DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disposal Group, Including Discontinued Operation, Product Warranty Accrual, 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;">wprt_DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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_wprt_DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disposal Group, Including Discontinued Operation, Product Warranty Accrual, Noncurrent</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;">wprt_DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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_wprt_DisposalGroupIncludingDiscontinuedOperationValuationAllowance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disposal Group, Including Discontinued Operation, Valuation Allowance</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;">wprt_DisposalGroupIncludingDiscontinuedOperationValuationAllowance</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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_DisposalGroupClassificationAxis=us-gaap_DiscontinuedOperationsHeldforsaleMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DisposalGroupClassificationAxis=us-gaap_DiscontinuedOperationsHeldforsaleMember</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_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis=wprt_LightDutyMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis=wprt_LightDutyMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>51
<FILENAME>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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Held-for-sale disposal group and discontinued operations - Revenue and Expenses of the Discontinued Operations (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Jun. 30, 2024</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_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingExpensesAbstract', 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="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity', window );">Net income (loss) from discontinued operations</a></td>
<td class="num">$ (29,291)<span></span>
</td>
<td class="nump">$ 1,671<span></span>
</td>
<td class="num">$ (26,447)<span></span>
</td>
<td class="nump">$ 4,044<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_DisposalGroupClassificationAxis=us-gaap_DiscontinuedOperationsHeldforsaleMember', window );">Discontinued Operations, Held-for-Sale | Light-Duty</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems', window );"><strong>Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [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_DisposalGroupIncludingDiscontinuedOperationRevenue', window );">Revenue</a></td>
<td class="nump">76,372<span></span>
</td>
<td class="nump">69,277<span></span>
</td>
<td class="nump">140,004<span></span>
</td>
<td class="nump">132,423<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold', window );">Cost of revenue</a></td>
<td class="nump">61,219<span></span>
</td>
<td class="nump">54,514<span></span>
</td>
<td class="nump">111,160<span></span>
</td>
<td class="nump">105,395<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_DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss', window );">Gross profit</a></td>
<td class="nump">15,153<span></span>
</td>
<td class="nump">14,763<span></span>
</td>
<td class="nump">28,844<span></span>
</td>
<td class="nump">27,028<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingExpensesAbstract', 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="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_wprt_DisposalGroupIncludingDiscontinuedOperationResearchAndDevelopmentExpense', window );">Research and development</a></td>
<td class="nump">2,979<span></span>
</td>
<td class="nump">3,100<span></span>
</td>
<td class="nump">5,738<span></span>
</td>
<td class="nump">6,444<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisposalGroupIncludingDiscontinuedOperationGeneralAndAdministrativeExpense', window );">General and administrative</a></td>
<td class="nump">3,756<span></span>
</td>
<td class="nump">5,883<span></span>
</td>
<td class="nump">7,481<span></span>
</td>
<td class="nump">9,041<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_wprt_DisposalGroupIncludingDiscontinuedOperationSellingAndMarketingExpense', window );">Sales and marketing</a></td>
<td class="nump">2,854<span></span>
</td>
<td class="nump">2,478<span></span>
</td>
<td class="nump">5,169<span></span>
</td>
<td class="nump">4,644<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_wprt_DisposalGroupIncludingDiscontinuedOperationForeignExchangeGainLoss', window );">Foreign exchange loss</a></td>
<td class="nump">1,862<span></span>
</td>
<td class="nump">198<span></span>
</td>
<td class="nump">2,609<span></span>
</td>
<td class="nump">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_DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization', window );">Depreciation and amortization</a></td>
<td class="nump">646<span></span>
</td>
<td class="nump">622<span></span>
</td>
<td class="nump">1,279<span></span>
</td>
<td class="nump">1,307<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_DisposalGroupIncludingDiscontinuedOperationOperatingExpense', window );">Operating expenses</a></td>
<td class="nump">12,097<span></span>
</td>
<td class="nump">12,281<span></span>
</td>
<td class="nump">22,276<span></span>
</td>
<td class="nump">21,518<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss', window );">Income from discontinued operations</a></td>
<td class="nump">3,056<span></span>
</td>
<td class="nump">2,482<span></span>
</td>
<td class="nump">6,568<span></span>
</td>
<td class="nump">5,510<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_wprt_DisposalGroupIncludingDiscontinuedOperationIncomeLossFromEquityMethodInvestments', window );">Income from investment accounted for by the equity method</a></td>
<td class="nump">387<span></span>
</td>
<td class="nump">414<span></span>
</td>
<td class="nump">472<span></span>
</td>
<td class="nump">445<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_DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax', window );">Loss from classifying the discontinued operations as held-for-sale</a></td>
<td class="num">(30,183)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(30,183)<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_wprt_DisposalGroupIncludingDiscontinuedOperationImpairmentOfLongLivedAssets', window );">Impairment of long-lived assets</a></td>
<td class="num">(664)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(664)<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_DisposalGroupIncludingDiscontinuedOperationInterestExpense', window );">Interest on long-term debt</a></td>
<td class="num">(391)<span></span>
</td>
<td class="num">(438)<span></span>
</td>
<td class="num">(875)<span></span>
</td>
<td class="num">(935)<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_wprt_DisposalGroupIncludingDiscontinuedOperationInterestAndOtherIncomeExpense', window );">Interest and other income (loss), net of bank charges</a></td>
<td class="nump">133<span></span>
</td>
<td class="nump">88<span></span>
</td>
<td class="nump">353<span></span>
</td>
<td class="nump">503<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_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax', window );">Income (loss) from discontinued operations before income tax</a></td>
<td class="num">(27,662)<span></span>
</td>
<td class="nump">2,546<span></span>
</td>
<td class="num">(24,329)<span></span>
</td>
<td class="nump">5,523<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation', window );">Income tax expense</a></td>
<td class="nump">1,629<span></span>
</td>
<td class="nump">875<span></span>
</td>
<td class="nump">2,118<span></span>
</td>
<td class="nump">1,479<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_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity', window );">Net income (loss) from discontinued operations</a></td>
<td class="num">$ (29,291)<span></span>
</td>
<td class="nump">$ 1,671<span></span>
</td>
<td class="num">$ (26,447)<span></span>
</td>
<td class="nump">$ 4,044<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_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 tax of income (loss) from a discontinued operation. Includes, but is not limited to, the income (loss) from operations during the phase-out period, gain (loss) on disposal, gain (loss) for reversal of write-down (write-down) to fair value, less cost to sell, and adjustments to a prior period gain (loss) on disposal.</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> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(12))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-3A<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5B<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-3B<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-4<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-1<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-3<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(14))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-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;">us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 tax of (gain) loss recognized for the (reversal of write-down) write-down to fair value, less cost to sell, of a 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> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-3B<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DiscontinuedOperationTaxEffectOfDiscontinuedOperation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 tax expense (benefit) related to a discontinued operation. Includes, but is not limited to, tax expense (benefit) related to income (loss) from operations during the phase-out period, tax expense (benefit) related to gain (loss) on disposal, tax expense (benefit) related to gain (loss) for reversal of write-down (write-down) to fair value, less cost to sell, and tax expense (benefit) related to adjustments of a prior period gain (loss) on disposal.</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> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479360/740-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-10<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482659/740-20-45-2<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-3A<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5B<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5C<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5C<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-3B<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-4<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-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;">us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 costs of goods sold attributable to disposal group, including, but not limited to, discontinued operation.</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> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5B<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 depreciation and amortization expense attributable to disposal group, including, but not limited to, 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> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5B<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DisposalGroupIncludingDiscontinuedOperationGeneralAndAdministrativeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 general and administrative expense attributable to disposal group, including, but not limited to, 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> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5B<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupIncludingDiscontinuedOperationGeneralAndAdministrativeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 gross profit attributable to disposal group, including, but not limited to, discontinued operation.</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> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5B<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DisposalGroupIncludingDiscontinuedOperationInterestExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 interest expense attributable to disposal group, including, but not limited to, 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> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5B<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section S99<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480781/205-20-S99-3<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-6<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupIncludingDiscontinuedOperationInterestExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DisposalGroupIncludingDiscontinuedOperationOperatingExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 expense attributable to disposal group, including, but not limited to, 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> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5B<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 income (loss) attributable to disposal group, including, but not limited to, 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> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5B<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DisposalGroupIncludingDiscontinuedOperationRevenue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 attributable to disposal group, including, but not limited to, discontinued operation.</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> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5B<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 tax of income (loss) from a discontinued operation attributable to the parent. Includes, but is not limited to, the income (loss) from operations during the phase-out period, gain (loss) on disposal, gain (loss) for reversal of write-down (write-down) to fair value, less cost to sell, and adjustments to a prior period gain (loss) on disposal.</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> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 19<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-19<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-3A<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5B<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5C<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5C<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-3B<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-4<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-1<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3A<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-3A<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3A<br> -Subparagraph (b)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-3A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems</td>
</tr>
<tr>
<td style="padding-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_wprt_DisposalGroupIncludingDiscontinuedOperationForeignExchangeGainLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disposal Group, Including Discontinued Operation, Foreign Exchange Gain (Loss)</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;">wprt_DisposalGroupIncludingDiscontinuedOperationForeignExchangeGainLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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_wprt_DisposalGroupIncludingDiscontinuedOperationImpairmentOfLongLivedAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disposal Group, Including Discontinued Operation, Impairment Of Long-Lived 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;">wprt_DisposalGroupIncludingDiscontinuedOperationImpairmentOfLongLivedAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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_wprt_DisposalGroupIncludingDiscontinuedOperationIncomeLossFromEquityMethodInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disposal Group, Including Discontinued Operation, Income (Loss) From Equity Method Investments</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;">wprt_DisposalGroupIncludingDiscontinuedOperationIncomeLossFromEquityMethodInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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_wprt_DisposalGroupIncludingDiscontinuedOperationInterestAndOtherIncomeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disposal Group, Including Discontinued Operation, Interest And Other Income (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;">wprt_DisposalGroupIncludingDiscontinuedOperationInterestAndOtherIncomeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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_wprt_DisposalGroupIncludingDiscontinuedOperationOperatingExpensesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disposal Group, Including Discontinued Operation, Operating Expenses</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;">wprt_DisposalGroupIncludingDiscontinuedOperationOperatingExpensesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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_wprt_DisposalGroupIncludingDiscontinuedOperationResearchAndDevelopmentExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disposal Group, Including Discontinued Operation, Research And Development 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;">wprt_DisposalGroupIncludingDiscontinuedOperationResearchAndDevelopmentExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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_wprt_DisposalGroupIncludingDiscontinuedOperationSellingAndMarketingExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disposal Group, Including Discontinued Operation, Selling And Marketing 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;">wprt_DisposalGroupIncludingDiscontinuedOperationSellingAndMarketingExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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_DisposalGroupClassificationAxis=us-gaap_DiscontinuedOperationsHeldforsaleMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DisposalGroupClassificationAxis=us-gaap_DiscontinuedOperationsHeldforsaleMember</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_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis=wprt_LightDutyMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis=wprt_LightDutyMember</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>52
<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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Accounts receivable - Schedule of Accounts Receivable (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Dec. 31, 2024</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_AccountsNotesAndLoansReceivableLineItems', window );"><strong>Accounts, Notes, Loans and Financing Receivable [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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_wprt_TradeAccountsReceivable', window );">Customer trade receivables</a></td>
<td class="nump">$ 2,916<span></span>
</td>
<td class="nump">$ 2,513<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_wprt_HoldbackReceivablesNetCurrent', window );">Holdback receivable</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">10,737<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherReceivables', window );">Other receivables</a></td>
<td class="nump">1,728<span></span>
</td>
<td class="nump">887<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_AllowanceForDoubtfulAccountsReceivableCurrent', window );">Allowance for expected credit losses</a></td>
<td class="num">(569)<span></span>
</td>
<td class="num">(372)<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_AccountsReceivableNetCurrent', window );">Accounts receivable</a></td>
<td class="nump">16,580<span></span>
</td>
<td class="nump">18,738<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=us-gaap_RelatedPartyMember', window );">Related Party</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_AccountsNotesAndLoansReceivableLineItems', window );"><strong>Accounts, Notes, Loans and Financing Receivable [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_OtherReceivablesNetCurrent', window );">Due from related parties (note 14)</a></td>
<td class="nump">$ 12,505<span></span>
</td>
<td class="nump">$ 4,973<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_AccountsNotesAndLoansReceivableLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 310<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 40<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481628/310-20-40-7<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481990/310-10-45-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;">us-gaap_AccountsNotesAndLoansReceivableLineItems</td>
</tr>
<tr>
<td style="padding-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_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/2009/role/commonPracticeRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481990/310-10-45-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;">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_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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479344/326-20-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481962/310-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_OtherReceivables">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 due from parties in nontrade transactions, 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/exampleRef<br> -Topic 944<br> -SubTopic 605<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477548/944-605-55-14<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 944<br> -SubTopic 605<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477548/944-605-55-11<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 49<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-49<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(5)(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(3)(a)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-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;">us-gaap_OtherReceivables</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_OtherReceivablesNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, of receivables classified as other, 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>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_OtherReceivablesNetCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_wprt_HoldbackReceivablesNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Holdback Receivables, Net, 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;">wprt_HoldbackReceivablesNetCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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_wprt_TradeAccountsReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 receivables that are derived from customers.</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;">wprt_TradeAccountsReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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_RelatedPartyTransactionsByRelatedPartyAxis=us-gaap_RelatedPartyMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=us-gaap_RelatedPartyMember</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>53
<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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accounts receivable - Narrative (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2022</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Dec. 31, 2024</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_AccountsNotesAndLoansReceivableLineItems', window );"><strong>Accounts, Notes, Loans and Financing Receivable [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_wprt_HoldbackReceivablesNetCurrent', window );">Holdback receivable</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">$ 10,737<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_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=wprt_CumminsWestportIncMember', window );">Cummins Westport Inc</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsNotesAndLoansReceivableLineItems', window );"><strong>Accounts, Notes, Loans and Financing Receivable [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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_wprt_HoldbackTerm', window );">Purchase agreement holdback term (in years)</a></td>
<td class="text">3 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_wprt_HoldbackReceivablesNetCurrent', window );">Holdback receivable</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 11,365<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_AccountsNotesAndLoansReceivableLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 310<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 40<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481628/310-20-40-7<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481990/310-10-45-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;">us-gaap_AccountsNotesAndLoansReceivableLineItems</td>
</tr>
<tr>
<td style="padding-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_wprt_HoldbackReceivablesNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Holdback Receivables, Net, 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;">wprt_HoldbackReceivablesNetCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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_wprt_HoldbackTerm">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Holdback, Term</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;">wprt_HoldbackTerm</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=wprt_CumminsWestportIncMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=wprt_CumminsWestportIncMember</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>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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Inventories - Schedule of Inventories (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Dec. 31, 2024</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_OtherInventoryPurchasedGoods', window );">Purchased parts</a></td>
<td class="nump">$ 2,341<span></span>
</td>
<td class="nump">$ 5,463<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">515<span></span>
</td>
<td class="nump">1,205<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_InventoryNet', window );">Inventories</a></td>
<td class="nump">$ 2,856<span></span>
</td>
<td class="nump">$ 6,668<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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-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;">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/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-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;">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_OtherInventoryPurchasedGoods">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 amount of components used by the entity which are bought from another entity rather than produced by the 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/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-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;">us-gaap_OtherInventoryPurchasedGoods</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>55
<FILENAME>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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Inventories - Narrative (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Jun. 30, 2024</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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Inventory write-down to net realizable value</a></td>
<td class="nump">$ 140<span></span>
</td>
<td class="nump">$ 307<span></span>
</td>
<td class="nump">$ 110<span></span>
</td>
<td class="nump">$ 503<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_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> -Topic 330<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483080/330-10-50-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;">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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>56
<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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Long-term investments - Schedule of Investments (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Dec. 31, 2024</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_ScheduleOfInvestmentsLineItems', window );"><strong>Schedule of Investments [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_LongTermInvestments', window );">Long-term investments</a></td>
<td class="nump">$ 37,122<span></span>
</td>
<td class="nump">$ 36,866<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_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=wprt_CespiraCanadaLPMember', window );">Cespira Canada LP</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_ScheduleOfInvestmentsLineItems', window );"><strong>Schedule of Investments [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_LongTermInvestments', window );">Long-term investments</a></td>
<td class="nump">24,263<span></span>
</td>
<td class="nump">25,494<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_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=wprt_CespiraSwedenABMember', window );">Cespira Sweden AB</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_ScheduleOfInvestmentsLineItems', window );"><strong>Schedule of Investments [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_LongTermInvestments', window );">Long-term investments</a></td>
<td class="nump">12,859<span></span>
</td>
<td class="nump">11,225<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_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=wprt_OtherEquityAccountedForInvesteesMember', window );">Other equity-accounted investees</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_ScheduleOfInvestmentsLineItems', window );"><strong>Schedule of Investments [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_LongTermInvestments', window );">Long-term investments</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 147<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_LongTermInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 total amount of investments that are intended to be held for an extended period of time (longer than one operating cycle).</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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(12))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-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;">us-gaap_LongTermInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_ScheduleOfInvestmentsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column A)(Footnote 1)(b)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column A)(Footnote 2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column A)(Footnote 2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column A)(Footnote 4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column C))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column A)(Footnote 1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column A)(Footnote 2)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column A)(Footnote 2)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column A)(Footnote 4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column C)(Footnote 5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column C)(Footnote 6))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column B)(Footnote 7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column C)(Footnote 8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column C)(Footnote 8)(a)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column C)(Footnote 8)(a)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column C)(Footnote 8)(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column C)(Footnote 8)(b)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column C)(Footnote 8)(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column C)(Footnote 8)(c))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column C)(Footnote 9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column C)(Footnote 10))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column C))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column D))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column A)(Footnote 1)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column A)(Footnote 1)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column C)(Footnote 2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column A)(Footnote 3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column A)(Footnote 4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column A)(Footnote 4)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column A)(Footnote 6))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column A)(Footnote 7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column C)(Footnote 9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column B)(Footnote 10))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 38: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column C)(Footnote 11))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 39: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column C)(Footnote 11)(a)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 40: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column C)(Footnote 11)(a)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 41: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column C)(Footnote 11)(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 42: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column C)(Footnote 11)(b)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 43: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column C)(Footnote 11)(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 44: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column C)(Footnote 11)(c))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 45: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column C)(Footnote 12))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 46: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column C)(Footnote 13))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 47: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 48: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 49: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column F))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 50: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column A)(Footnote 1)(a)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 51: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column A)(Footnote 1)(a)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 52: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column A)(Footnote 1)(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 53: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column A)(Footnote 1)(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 54: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column A)(Footnote 1)(b)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 55: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column A)(Footnote 1)(b)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 56: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column A)(Footnote 1)(b)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 57: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column A)(Footnote 1)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 58: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column A)(Footnote 3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 59: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column F)(Footnote 4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 60: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column F)(Footnote 5)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 61: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column F)(Footnote 7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 62: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column F)(Footnote 8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 63: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column F)(Footnote 9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 64: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 19<br> -Subparagraph (1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-19<br><br>Reference 65: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 19<br> -Subparagraph (3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-19<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfInvestmentsLineItems</td>
</tr>
<tr>
<td style="padding-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_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=wprt_CespiraCanadaLPMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=wprt_CespiraCanadaLPMember</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_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=wprt_CespiraSwedenABMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=wprt_CespiraSwedenABMember</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_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=wprt_OtherEquityAccountedForInvesteesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=wprt_OtherEquityAccountedForInvesteesMember</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>57
<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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Long-term investments - Narrative (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Jun. 30, 2024</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_InvestmentsDebtAndEquitySecuritiesAbstract', window );"><strong>Investments, Debt and Equity Securities [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_IncomeLossFromEquityMethodInvestments', window );">Loss from investments accounted for by the equity method</a></td>
<td class="num">$ (3,686)<span></span>
</td>
<td class="num">$ (1,102)<span></span>
</td>
<td class="num">$ (7,570)<span></span>
</td>
<td class="num">$ (1,102)<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_PaymentsToAcquireEquityMethodInvestments', window );">Capital contributions to investments accounted for by the equity method investment</a></td>
<td class="nump">$ 4,185<span></span>
</td>
<td class="nump">$ 9,900<span></span>
</td>
<td class="nump">$ 8,871<span></span>
</td>
<td class="nump">$ 9,900<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_IncomeLossFromEquityMethodInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 (loss) for proportionate share of equity method investee's income (loss).</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> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(10))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481664/323-10-45-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(12))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(13)(f))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-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;">us-gaap_IncomeLossFromEquityMethodInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_InvestmentsDebtAndEquitySecuritiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_InvestmentsDebtAndEquitySecuritiesAbstract</td>
</tr>
<tr>
<td style="padding-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_PaymentsToAcquireEquityMethodInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 purchase of or advances to an equity method investments, which are investments in joint ventures and entities in which the entity has an equity ownership interest normally of 20 to 50 percent and exercises significant influence.</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> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsToAcquireEquityMethodInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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>58
<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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Long-term investments - Balance Sheet (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Dec. 31, 2024</div></th>
<th class="th"><div>Jun. 30, 2024</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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 and cash equivalents</a></td>
<td class="nump">$ 6,064<span></span>
</td>
<td class="nump">$ 14,754<span></span>
</td>
<td class="nump">$ 13,474<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 );">Accounts receivable</a></td>
<td class="nump">16,580<span></span>
</td>
<td class="nump">18,738<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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</a></td>
<td class="nump">2,856<span></span>
</td>
<td class="nump">6,668<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_AssetsCurrent', window );">Total current assets</a></td>
<td class="nump">228,019<span></span>
</td>
<td class="nump">169,886<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, plant and equipment</a></td>
<td class="nump">4,444<span></span>
</td>
<td class="nump">3,120<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_Assets', window );">Total assets</a></td>
<td class="nump">272,054<span></span>
</td>
<td class="nump">291,621<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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>
<td class="text">&#160;<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_AccountsPayableAndAccruedLiabilitiesCurrent', window );">Accounts payable</a></td>
<td class="nump">17,594<span></span>
</td>
<td class="nump">19,435<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesCurrent', window );">Total current liabilities</a></td>
<td class="nump">159,464<span></span>
</td>
<td class="nump">109,268<span></span>
</td>
<td class="text">&#160;<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_LongTermDebtAndCapitalLeaseObligations', window );">Long-term portion of provisions</a></td>
<td class="nump">977<span></span>
</td>
<td class="nump">2,932<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherLiabilitiesNoncurrent', window );">Other long-term liabilities</a></td>
<td class="nump">1,389<span></span>
</td>
<td class="nump">1,388<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_Liabilities', window );">Total liabilities</a></td>
<td class="nump">163,162<span></span>
</td>
<td class="nump">154,596<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_EquityMethodInvestmentNonconsolidatedInvesteeAxis=wprt_CespiraJointVentureMember', window );">Cespira Joint Venture</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_AssetsCurrentAbstract', window );"><strong>Current assets:</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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Cash and cash equivalents</a></td>
<td class="nump">9,010<span></span>
</td>
<td class="nump">10,305<span></span>
</td>
<td class="text">&#160;<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 );">Accounts receivable</a></td>
<td class="nump">25,068<span></span>
</td>
<td class="nump">21,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_InventoryNet', window );">Inventories</a></td>
<td class="nump">16,512<span></span>
</td>
<td class="nump">7,414<span></span>
</td>
<td class="text">&#160;<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_PrepaidExpenseCurrentAndNoncurrent', window );">Prepaid expenses</a></td>
<td class="nump">3,376<span></span>
</td>
<td class="nump">1,471<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsCurrent', window );">Total current assets</a></td>
<td class="nump">53,966<span></span>
</td>
<td class="nump">40,190<span></span>
</td>
<td class="text">&#160;<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_PropertyPlantAndEquipmentNet', window );">Property, plant and equipment</a></td>
<td class="nump">41,409<span></span>
</td>
<td class="nump">40,901<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IntangibleAssetsNetExcludingGoodwill', window );">Intangible assets</a></td>
<td class="nump">7,215<span></span>
</td>
<td class="nump">7,087<span></span>
</td>
<td class="text">&#160;<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_Goodwill', window );">Goodwill</a></td>
<td class="nump">595<span></span>
</td>
<td class="nump">563<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsGross', window );">Deferred tax assets</a></td>
<td class="nump">102<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Assets', window );">Total assets</a></td>
<td class="nump">103,287<span></span>
</td>
<td class="nump">88,741<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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>
<td class="text">&#160;<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_AccountsPayableAndAccruedLiabilitiesCurrent', window );">Accounts payable</a></td>
<td class="nump">22,680<span></span>
</td>
<td class="nump">16,527<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShortTermBorrowings', window );">Current portion of provisions</a></td>
<td class="nump">1,826<span></span>
</td>
<td class="nump">2,128<span></span>
</td>
<td class="text">&#160;<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_OtherLiabilitiesCurrent', window );">Other current liabilities</a></td>
<td class="nump">4,800<span></span>
</td>
<td class="nump">1,910<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxLiabilities', window );">Deferred income tax liabilities</a></td>
<td class="nump">197<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesCurrent', window );">Total current liabilities</a></td>
<td class="nump">29,503<span></span>
</td>
<td class="nump">20,565<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtAndCapitalLeaseObligations', window );">Long-term portion of provisions</a></td>
<td class="nump">456<span></span>
</td>
<td class="nump">532<span></span>
</td>
<td class="text">&#160;<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_OtherLiabilitiesNoncurrent', window );">Other long-term liabilities</a></td>
<td class="nump">290<span></span>
</td>
<td class="nump">569<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Liabilities', window );">Total liabilities</a></td>
<td class="nump">30,249<span></span>
</td>
<td class="nump">21,666<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_AssetsNet', window );">Net assets</a></td>
<td class="nump">$ 73,038<span></span>
</td>
<td class="nump">$ 67,075<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_AccountsPayableAndAccruedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 obligations incurred through that date and due within one year (or the operating cycle, if longer), including liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received, taxes, interest, rent and utilities, accrued salaries and bonuses, payroll taxes and fringe benefits.</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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-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;">us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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/2009/role/commonPracticeRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481990/310-10-45-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;">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_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>Amount of asset recognized for present right to economic benefit.</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> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478671/942-235-S50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 64<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481620/480-10-55-64<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 944<br> -SubTopic 605<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477548/944-605-55-14<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 944<br> -SubTopic 605<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477548/944-605-55-11<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 10: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 49<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-49<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 13: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-25<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 19: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 20: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-12<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(12))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 25: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 26: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 35: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 37: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(11))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-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;">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>Amount of asset recognized for present right to economic benefit, 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> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-25<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 12: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 13: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 22: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_AssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 net assets (liabilities).</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> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 30<br> -Topic 205<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479910/205-30-50-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;">us-gaap_AssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 equivalent, and cash and cash equivalent restricted to withdrawal or usage; attributable to continuing operation. Cash includes, but is not limited to, currency on hand, demand deposit with financial institution, and account with general characteristic of demand deposit. Cash equivalent includes, but is not limited to, short-term, highly liquid investment that is both readily convertible to known amount of cash and so near maturity that it presents insignificant risk of change in value because of change in interest rate.</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> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-8<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-24<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_DeferredIncomeTaxLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 deferred tax liability attributable to taxable temporary differences.</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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(26)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-2<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(26)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(15)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-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;">us-gaap_DeferredIncomeTaxLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DeferredTaxAssetsGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 temporary differences and carryforwards.</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> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-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;">us-gaap_DeferredTaxAssetsGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_Goodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 impairment loss, of asset representing future economic benefit arising from other asset acquired in business combination or from joint venture formation or both, that is not individually identified and separately recognized.</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> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482548/350-20-55-24<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479328/805-10-50-8<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 41<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479303/805-10-55-41<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 740<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 13<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478064/805-740-55-13<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 39<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479303/805-10-55-39<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 49<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-49<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 100<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482078/820-10-55-100<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(15))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482598/350-20-45-1<br><br>Reference 11: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482573/350-20-50-1<br><br>Reference 12: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482573/350-20-50-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(10)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 14: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 805<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479581/805-30-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Goodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_IntangibleAssetsNetExcludingGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 of all intangible assets, excluding goodwill, as of the balance sheet date, net of accumulated amortization and impairment charges.</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> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482686/350-30-45-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;">us-gaap_IntangibleAssetsNetExcludingGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-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;">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>Amount of liability recognized for present obligation requiring transfer or otherwise providing economic benefit to others.</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> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -SubTopic 10<br> -Topic 210<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(24))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 64<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481620/480-10-55-64<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 10: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(26))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 11: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 12: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(21))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-25<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 18: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-12<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(14))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 21: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 30: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br><br>Reference 31: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br><br>Reference 32: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_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/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(21))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-25<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 10: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-5<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 13: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 22: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br><br>Reference 23: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_LongTermDebtAndCapitalLeaseObligations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 long-term debt and lease obligation, classified as noncurrent.</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> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -SubTopic 10<br> -Topic 210<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(16)(a)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-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;">us-gaap_LongTermDebtAndCapitalLeaseObligations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_OtherLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_OtherLiabilitiesNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 classified as other, due after 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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(24))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-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;">us-gaap_OtherLiabilitiesNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_PrepaidExpenseCurrentAndNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 expenditures made in advance of when the economic benefit of the cost will be realized, and which will be expensed in future periods with the passage of time or when a triggering event occurs.</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> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(10))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(10))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(7)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-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;">us-gaap_PrepaidExpenseCurrentAndNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 360<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-7A<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 360<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478451/942-360-50-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;">us-gaap_PropertyPlantAndEquipmentNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShortTermBorrowings">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Reflects the total carrying amount as of the balance sheet date of debt having initial terms less than 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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(13))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(16)(a)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-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;">us-gaap_ShortTermBorrowings</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_EquityMethodInvestmentNonconsolidatedInvesteeAxis=wprt_CespiraJointVentureMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_EquityMethodInvestmentNonconsolidatedInvesteeAxis=wprt_CespiraJointVentureMember</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>59
<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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Long-term investments - Income Statement (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Jun. 30, 2024</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_ScheduleOfInvestmentsLineItems', window );"><strong>Schedule of Investments [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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">$ 12,498<span></span>
</td>
<td class="nump">$ 14,109<span></span>
</td>
<td class="nump">$ 19,821<span></span>
</td>
<td class="nump">$ 28,537<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_GrossProfit', window );">Gross profit</a></td>
<td class="nump">842<span></span>
</td>
<td class="nump">2,359<span></span>
</td>
<td class="nump">2,377<span></span>
</td>
<td class="nump">1,817<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CostOfRevenueAbstract', 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="re">
<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 );">Research and development</a></td>
<td class="nump">1,574<span></span>
</td>
<td class="nump">3,460<span></span>
</td>
<td class="nump">2,867<span></span>
</td>
<td class="nump">7,809<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GeneralAndAdministrativeExpense', window );">General and administrative</a></td>
<td class="nump">4,106<span></span>
</td>
<td class="nump">5,720<span></span>
</td>
<td class="nump">6,778<span></span>
</td>
<td class="nump">12,915<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_SellingAndMarketingExpense', window );">Sales and marketing</a></td>
<td class="nump">290<span></span>
</td>
<td class="nump">962<span></span>
</td>
<td class="nump">733<span></span>
</td>
<td class="nump">2,083<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax', window );">Foreign exchange gain</a></td>
<td class="num">(4,224)<span></span>
</td>
<td class="num">(141)<span></span>
</td>
<td class="num">(5,427)<span></span>
</td>
<td class="nump">1,795<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_DepreciationAmortizationAndAccretionNet', window );">Depreciation and amortization</a></td>
<td class="nump">106<span></span>
</td>
<td class="nump">98<span></span>
</td>
<td class="nump">214<span></span>
</td>
<td class="nump">456<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_CostsAndExpenses', window );">Operating expenses</a></td>
<td class="nump">1,852<span></span>
</td>
<td class="nump">10,099<span></span>
</td>
<td class="nump">5,165<span></span>
</td>
<td class="nump">25,058<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 continuing operations</a></td>
<td class="num">(1,010)<span></span>
</td>
<td class="num">(7,740)<span></span>
</td>
<td class="num">(2,788)<span></span>
</td>
<td class="num">(23,241)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestIncomeExpenseNonoperatingNet', window );">Interest income, net of bank charges</a></td>
<td class="num">(147)<span></span>
</td>
<td class="nump">95<span></span>
</td>
<td class="nump">502<span></span>
</td>
<td class="nump">21<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_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Income (loss) before income taxes</a></td>
<td class="num">(5,009)<span></span>
</td>
<td class="nump">4,231<span></span>
</td>
<td class="num">(10,214)<span></span>
</td>
<td class="num">(11,659)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Income tax (recovery) expense</a></td>
<td class="nump">44<span></span>
</td>
<td class="nump">85<span></span>
</td>
<td class="nump">134<span></span>
</td>
<td class="nump">216<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 income (loss) for the period</a></td>
<td class="num">(34,344)<span></span>
</td>
<td class="nump">5,817<span></span>
</td>
<td class="num">(36,795)<span></span>
</td>
<td class="num">(7,831)<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_EquityMethodInvestmentNonconsolidatedInvesteeAxis=wprt_CespiraJointVentureMember', window );">Cespira Joint Venture</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_ScheduleOfInvestmentsLineItems', window );"><strong>Schedule of Investments [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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">12,020<span></span>
</td>
<td class="nump">4,059<span></span>
</td>
<td class="nump">28,819<span></span>
</td>
<td class="nump">4,059<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_CostOfRevenue', window );">Cost of revenue</a></td>
<td class="nump">13,946<span></span>
</td>
<td class="nump">3,901<span></span>
</td>
<td class="nump">30,230<span></span>
</td>
<td class="nump">3,901<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 profit</a></td>
<td class="num">(1,926)<span></span>
</td>
<td class="nump">158<span></span>
</td>
<td class="num">(1,411)<span></span>
</td>
<td class="nump">158<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_CostOfRevenueAbstract', 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 );">Research and development</a></td>
<td class="nump">1,888<span></span>
</td>
<td class="nump">1,121<span></span>
</td>
<td class="nump">4,890<span></span>
</td>
<td class="nump">1,121<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_GeneralAndAdministrativeExpense', window );">General and administrative</a></td>
<td class="nump">2,692<span></span>
</td>
<td class="nump">715<span></span>
</td>
<td class="nump">5,419<span></span>
</td>
<td class="nump">715<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SellingAndMarketingExpense', window );">Sales and marketing</a></td>
<td class="nump">322<span></span>
</td>
<td class="nump">69<span></span>
</td>
<td class="nump">618<span></span>
</td>
<td class="nump">69<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_ForeignCurrencyTransactionGainLossBeforeTax', window );">Foreign exchange gain</a></td>
<td class="num">(845)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(88)<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_DepreciationAmortizationAndAccretionNet', window );">Depreciation and amortization</a></td>
<td class="nump">860<span></span>
</td>
<td class="nump">265<span></span>
</td>
<td class="nump">1,590<span></span>
</td>
<td class="nump">265<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_CostsAndExpenses', window );">Operating expenses</a></td>
<td class="nump">4,917<span></span>
</td>
<td class="nump">2,170<span></span>
</td>
<td class="nump">12,429<span></span>
</td>
<td class="nump">2,170<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_OperatingIncomeLoss', window );">Loss from continuing operations</a></td>
<td class="num">(6,843)<span></span>
</td>
<td class="num">(2,012)<span></span>
</td>
<td class="num">(13,840)<span></span>
</td>
<td class="num">(2,012)<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_InterestIncomeExpenseNonoperatingNet', window );">Interest income, net of bank charges</a></td>
<td class="nump">25<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">32<span></span>
</td>
<td class="nump">0<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_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Income (loss) before income taxes</a></td>
<td class="num">(6,818)<span></span>
</td>
<td class="num">(2,012)<span></span>
</td>
<td class="num">(13,808)<span></span>
</td>
<td class="num">(2,012)<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_IncomeTaxExpenseBenefit', window );">Income tax (recovery) expense</a></td>
<td class="num">(72)<span></span>
</td>
<td class="nump">4<span></span>
</td>
<td class="num">(64)<span></span>
</td>
<td class="nump">4<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_NetIncomeLoss', window );">Net income (loss) for the period</a></td>
<td class="num">$ (6,746)<span></span>
</td>
<td class="num">$ (2,016)<span></span>
</td>
<td class="num">$ (13,744)<span></span>
</td>
<td class="num">$ (2,016)<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_CostOfRevenue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 cost of goods produced and sold and services rendered 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> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CostOfRevenue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_CostOfRevenueAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CostOfRevenueAbstract</td>
</tr>
<tr>
<td style="padding-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_CostsAndExpenses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 costs of sales and operating expenses for 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> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-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;">us-gaap_CostsAndExpenses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DepreciationAmortizationAndAccretionNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 net amount of depreciation, amortization, and accretion recognized during an accounting period. As a noncash item, the net amount is added back to net income when calculating cash provided by or used in operations using the indirect 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> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DepreciationAmortizationAndAccretionNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_ForeignCurrencyTransactionGainLossBeforeTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 tax, of realized and unrealized gain (loss) from foreign currency transaction.</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> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482014/830-20-35-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481956/830-20-45-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481926/830-20-50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481839/830-10-45-17<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (o)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476148/220-40-50-22<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ForeignCurrencyTransactionGainLossBeforeTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_GeneralAndAdministrativeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 of expenses of managing and administering the affairs of an entity, including affiliates of the reporting entity, which are not directly or indirectly associated with the manufacture, sale or creation of a product or product line.</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> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(2)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-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;">us-gaap_GeneralAndAdministrativeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 10: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 11: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 12: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 16: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 25: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-31<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.</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> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-4<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 21<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-21<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-14<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478671/942-235-S50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-1<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 11: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 12: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(11))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 14: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-31<br><br>Reference 15: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(10))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 16: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(15))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-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;">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_IncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to 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/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-4<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 21<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-21<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-14<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 231<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482663/740-10-55-231<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-9<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479360/740-10-S99-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-8<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-10<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -SubTopic 20<br> -Topic 740<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482659/740-20-45-2<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -SubTopic 10<br> -Topic 235<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-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;">us-gaap_IncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_InterestIncomeExpenseNonoperatingNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 interest income (expense) classified as nonoperating.</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> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4A<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4A<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InterestIncomeExpenseNonoperatingNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-4<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 21<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-21<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-14<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(k)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479857/480-10-S50-3<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479887/480-10-S45-3<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3A<br> -Subparagraph (24)(d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480244/480-10-S99-3A<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 105<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 9<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479343/105-10-65-9<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 17<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480336/718-10-65-17<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-9<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 19: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-6<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-3<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-8<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479105/946-220-45-7<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 34: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 38: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 39: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 40: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 41: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 42: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 43: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 44: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 45: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 46: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1A<br><br>Reference 47: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1B<br><br>Reference 48: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (f)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481538/470-20-65-4<br><br>Reference 49: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-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;">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_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> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-4<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-14<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-31<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_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>Amount of expense for research and development. Includes, but is not limited to, cost for computer software product to be sold, leased, or otherwise marketed and writeoff of research and development assets acquired in transaction other than business combination or joint venture formation or both. Excludes write-down of intangible asset acquired in business combination or from joint venture formation or both, used in research and development 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> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 18<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-18<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-14<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 985<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481283/985-20-50-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 730<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482916/730-10-50-1<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 912<br> -SubTopic 730<br> -Name Accounting Standards Codification<br> -Section 25<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479532/912-730-25-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;">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_RevenueFromContractWithCustomerExcludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.</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> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-4<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-14<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-41<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 42<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-42<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-7<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 924<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479941/924-10-S99-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-5<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-40<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_ScheduleOfInvestmentsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column A)(Footnote 1)(b)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column A)(Footnote 2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column A)(Footnote 2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column A)(Footnote 4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column C))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column A)(Footnote 1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column A)(Footnote 2)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column A)(Footnote 2)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column A)(Footnote 4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column C)(Footnote 5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column C)(Footnote 6))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column B)(Footnote 7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column C)(Footnote 8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column C)(Footnote 8)(a)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column C)(Footnote 8)(a)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column C)(Footnote 8)(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column C)(Footnote 8)(b)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column C)(Footnote 8)(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column C)(Footnote 8)(c))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column C)(Footnote 9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.12-12(Column C)(Footnote 10))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-1<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column C))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column D))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column A)(Footnote 1)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column A)(Footnote 1)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column C)(Footnote 2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column A)(Footnote 3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column A)(Footnote 4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column A)(Footnote 4)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column A)(Footnote 6))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column A)(Footnote 7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column C)(Footnote 9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column B)(Footnote 10))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 38: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column C)(Footnote 11))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 39: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column C)(Footnote 11)(a)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 40: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column C)(Footnote 11)(a)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 41: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column C)(Footnote 11)(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 42: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column C)(Footnote 11)(b)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 43: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column C)(Footnote 11)(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 44: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column C)(Footnote 11)(c))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 45: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column C)(Footnote 12))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 46: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-12B(Column C)(Footnote 13))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-3<br><br>Reference 47: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 48: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 49: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column F))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 50: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column A)(Footnote 1)(a)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 51: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column A)(Footnote 1)(a)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 52: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column A)(Footnote 1)(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 53: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column A)(Footnote 1)(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 54: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column A)(Footnote 1)(b)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 55: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column A)(Footnote 1)(b)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 56: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column A)(Footnote 1)(b)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 57: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column A)(Footnote 1)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 58: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column A)(Footnote 3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 59: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column F)(Footnote 4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 60: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column F)(Footnote 5)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 61: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column F)(Footnote 7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 62: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column F)(Footnote 8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 63: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14(Column F)(Footnote 9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-6<br><br>Reference 64: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 19<br> -Subparagraph (1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-19<br><br>Reference 65: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 19<br> -Subparagraph (3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477271/946-320-S99-19<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfInvestmentsLineItems</td>
</tr>
<tr>
<td style="padding-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_SellingAndMarketingExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 amount of expenses directly related to the marketing or selling of products or services.</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_SellingAndMarketingExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_EquityMethodInvestmentNonconsolidatedInvesteeAxis=wprt_CespiraJointVentureMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_EquityMethodInvestmentNonconsolidatedInvesteeAxis=wprt_CespiraJointVentureMember</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>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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Property, plant and equipment (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Dec. 31, 2024</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>
</tr>
<tr class="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 );">Cost</a></td>
<td class="nump">$ 20,237<span></span>
</td>
<td class="nump">$ 17,334<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_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Accumulated Depreciation</a></td>
<td class="nump">15,793<span></span>
</td>
<td class="nump">14,214<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_PropertyPlantAndEquipmentNet', window );">Net Book Value</a></td>
<td class="nump">4,444<span></span>
</td>
<td class="nump">3,120<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=wprt_ComputerEquipmentAndSoftwareMember', window );">Computer equipment and software</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_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>
</tr>
<tr class="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 );">Cost</a></td>
<td class="nump">2,976<span></span>
</td>
<td class="nump">2,945<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Accumulated Depreciation</a></td>
<td class="nump">2,799<span></span>
</td>
<td class="nump">2,575<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_PropertyPlantAndEquipmentNet', window );">Net Book Value</a></td>
<td class="nump">177<span></span>
</td>
<td class="nump">370<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>
</tr>
<tr class="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>
</tr>
<tr class="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 );">Cost</a></td>
<td class="nump">1,013<span></span>
</td>
<td class="nump">861<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_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Accumulated Depreciation</a></td>
<td class="nump">381<span></span>
</td>
<td class="nump">309<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_PropertyPlantAndEquipmentNet', window );">Net Book Value</a></td>
<td class="nump">632<span></span>
</td>
<td class="nump">552<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_MachineryAndEquipmentMember', window );">Machinery and equipment</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_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>
</tr>
<tr class="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 );">Cost</a></td>
<td class="nump">11,942<span></span>
</td>
<td class="nump">9,464<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Accumulated Depreciation</a></td>
<td class="nump">8,527<span></span>
</td>
<td class="nump">7,488<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_PropertyPlantAndEquipmentNet', window );">Net Book Value</a></td>
<td class="nump">3,415<span></span>
</td>
<td class="nump">1,976<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>
</tr>
<tr class="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>
</tr>
<tr class="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 );">Cost</a></td>
<td class="nump">4,306<span></span>
</td>
<td class="nump">4,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_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Accumulated Depreciation</a></td>
<td class="nump">4,086<span></span>
</td>
<td class="nump">3,842<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_PropertyPlantAndEquipmentNet', window );">Net Book Value</a></td>
<td class="nump">$ 220<span></span>
</td>
<td class="nump">$ 222<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(14))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-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;">us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(13))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-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;">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>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-7A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 360<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-7A<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 360<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478451/942-360-50-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;">us-gaap_PropertyPlantAndEquipmentNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=wprt_ComputerEquipmentAndSoftwareMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=wprt_ComputerEquipmentAndSoftwareMember</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_MachineryAndEquipmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_MachineryAndEquipmentMember</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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>61
<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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Accounts payable and accrued liabilities (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Dec. 31, 2024</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_ShortTermDebtLineItems', window );"><strong>Short-Term Debt [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_AccountsPayableTradeCurrent', window );">Trade accounts payable</a></td>
<td class="nump">$ 8,190<span></span>
</td>
<td class="nump">$ 11,397<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_EmployeeRelatedLiabilitiesCurrent', window );">Accrued payroll</a></td>
<td class="nump">3,261<span></span>
</td>
<td class="nump">2,555<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedIncomeTaxesCurrent', window );">Taxes payable</a></td>
<td class="nump">3,812<span></span>
</td>
<td class="nump">3,813<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_ContractWithCustomerLiabilityCurrent', window );">Deferred revenue</a></td>
<td class="nump">330<span></span>
</td>
<td class="nump">533<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_AccountsPayableAndAccruedLiabilitiesCurrent', window );">Accounts payable and accrued liabilities</a></td>
<td class="nump">17,594<span></span>
</td>
<td class="nump">19,435<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=us-gaap_RelatedPartyMember', window );">Related Party</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_ShortTermDebtLineItems', window );"><strong>Short-Term Debt [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_OtherNotesPayableCurrent', window );">Due to related parties (note 14)</a></td>
<td class="nump">$ 2,001<span></span>
</td>
<td class="nump">$ 1,137<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_AccountsPayableAndAccruedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 obligations incurred through that date and due within one year (or the operating cycle, if longer), including liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received, taxes, interest, rent and utilities, accrued salaries and bonuses, payroll taxes and fringe benefits.</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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-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;">us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_AccountsPayableTradeCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 (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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsPayableTradeCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_AccruedIncomeTaxesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 the unpaid sum of the known and estimated amounts payable to satisfy all currently due domestic and foreign income tax obligations.</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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(15)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-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;">us-gaap_AccruedIncomeTaxesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-11<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479837/606-10-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-8<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479837/606-10-45-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;">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_EmployeeRelatedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 the carrying values as of the balance sheet date of obligations incurred through that date and payable for obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits. 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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-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;">us-gaap_EmployeeRelatedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_OtherNotesPayableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 long-term notes classified as other, payable 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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-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;">us-gaap_OtherNotesPayableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_ShortTermDebtLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_ShortTermDebtLineItems</td>
</tr>
<tr>
<td style="padding-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_RelatedPartyTransactionsByRelatedPartyAxis=us-gaap_RelatedPartyMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=us-gaap_RelatedPartyMember</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>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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Operating leases right-of-use assets and lease liabilities - Narrative (Details)<br></strong></div></th>
<th class="th"><div>Jun. 30, 2025</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_OperatingLeaseWeightedAverageRemainingLeaseTerm1', window );">Remaining lease term (in years)</a></td>
<td class="text">4 years<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_OperatingLeaseWeightedAverageDiscountRatePercent', window );">Weighted average discount rate</a></td>
<td class="nump">9.30%<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_OperatingLeaseWeightedAverageDiscountRatePercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 discount rate for operating lease calculated at point in time.</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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 53<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479589/842-20-55-53<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent</td>
</tr>
<tr>
<td style="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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 53<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479589/842-20-55-53<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>63
<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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Operating leases right-of-use assets and lease liabilities - 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">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Jun. 30, 2024</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_FinanceLeaseRightOfUseAssetAmortization', window );">Amortization of right-of-use assets</a></td>
<td class="nump">$ 95<span></span>
</td>
<td class="nump">$ 188<span></span>
</td>
<td class="nump">$ 185<span></span>
</td>
<td class="nump">$ 323<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_FinanceLeaseInterestExpense', window );">Interest</a></td>
<td class="nump">6<span></span>
</td>
<td class="nump">21<span></span>
</td>
<td class="nump">14<span></span>
</td>
<td class="nump">44<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</a></td>
<td class="nump">$ 101<span></span>
</td>
<td class="nump">$ 209<span></span>
</td>
<td class="nump">$ 199<span></span>
</td>
<td class="nump">$ 367<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_FinanceLeaseInterestExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 interest expense on 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/exampleRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 53<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479589/842-20-55-53<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-4<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseInterestExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_FinanceLeaseRightOfUseAssetAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 amortization expense attributable to 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/exampleRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 53<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479589/842-20-55-53<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-4<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseRightOfUseAssetAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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/exampleRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 53<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479589/842-20-55-53<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>64
<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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Operating leases right-of-use assets and lease liabilities - Maturities of Lease Liabilities (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Dec. 31, 2024</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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear', window );">The remainder of 2025</a></td>
<td class="nump">$ 336<span></span>
</td>
<td class="text">&#160;<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_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths', window );">2026</a></td>
<td class="nump">595<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo', window );">2027</a></td>
<td class="nump">608<span></span>
</td>
<td class="text">&#160;<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_LesseeOperatingLeaseLiabilityPaymentsDueYearThree', window );">2028</a></td>
<td class="nump">551<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour', window );">2029</a></td>
<td class="nump">487<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_wprt_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour', window );">Thereafter</a></td>
<td class="nump">293<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue', window );">Total undiscounted cash flows</a></td>
<td class="nump">2,870<span></span>
</td>
<td class="text">&#160;<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_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount', window );">Less: imputed interest</a></td>
<td class="nump">905<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiability', window );">Present value of operating lease liabilities</a></td>
<td class="nump">1,965<span></span>
</td>
<td class="text">&#160;<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 );">Less: current portion</a></td>
<td class="nump">633<span></span>
</td>
<td class="nump">$ 288<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Long-term operating lease liabilities (note 11)</a></td>
<td class="nump">$ 1,332<span></span>
</td>
<td class="nump">$ 548<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_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/2009/role/commonPracticeRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-4<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</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> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-4<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_LesseeOperatingLeaseLiabilityPaymentsDueYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 to be paid in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</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> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-4<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_LesseeOperatingLeaseLiabilityPaymentsDueYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</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> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-4<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</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> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-4<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 having initial or remaining lease term in excess of one year to be paid in remainder of current fiscal year.</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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-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;">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_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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-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;">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> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-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;">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_wprt_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, Liability, To Be Paid, After Year Four</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;">wprt_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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>65
<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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Long-term debt - Term Loan Facilities (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Dec. 31, 2024</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_LongTermDebtAndCapitalLeaseObligationsCurrent', window );">Current portion of long-term debt</a></td>
<td class="nump">$ 3,905<span></span>
</td>
<td class="nump">$ 3,905<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_LongTermDebtAndCapitalLeaseObligations', window );">Long-term portion</a></td>
<td class="nump">977<span></span>
</td>
<td class="nump">2,932<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_SecuredDebtMember', window );">Secured Debt</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_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="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtAndCapitalLeaseObligations', window );">Debt and capital lease obligations</a></td>
<td class="nump">4,882<span></span>
</td>
<td class="nump">6,837<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_LongTermDebtAndCapitalLeaseObligationsCurrent', window );">Current portion of long-term debt</a></td>
<td class="nump">3,905<span></span>
</td>
<td class="nump">3,905<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtAndCapitalLeaseObligations', window );">Long-term portion</a></td>
<td class="nump">$ 977<span></span>
</td>
<td class="nump">2,932<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_SecuredDebtMember', window );">Secured Debt | EDC</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_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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateEffectivePercentage', window );">Effective rate on debt</a></td>
<td class="nump">2.01%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtAndCapitalLeaseObligations', window );">Debt and capital lease obligations</a></td>
<td class="nump">$ 4,882<span></span>
</td>
<td class="nump">$ 6,837<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_DebtAndCapitalLeaseObligations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 short-term and long-term debt and lease 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> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(16))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(13))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-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;">us-gaap_DebtAndCapitalLeaseObligations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DebtInstrumentInterestRateEffectivePercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Effective interest rate for the funds borrowed under the debt agreement considering interest compounding and original issue discount or premium.</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> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482949/835-30-55-8<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22)(a)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482900/835-30-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482925/835-30-45-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentInterestRateEffectivePercentage</td>
</tr>
<tr>
<td style="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>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-8A<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-2<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-4<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-3<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(f))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482949/835-30-55-8<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481568/470-20-55-69B<br><br>Reference 10: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69C<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481568/470-20-55-69C<br><br>Reference 11: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69E<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481568/470-20-55-69E<br><br>Reference 12: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69F<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481568/470-20-55-69F<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 15: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1D<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1D<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1D<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1D<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1D<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1D<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1E<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1E<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1E<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1F<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1F<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1F<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1F<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1F<br> -Subparagraph (b)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1F<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1F<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1F<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1I<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1I<br><br>Reference 30: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482925/835-30-45-2<br><br>Reference 31: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482900/835-30-50-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;">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_LongTermDebtAndCapitalLeaseObligations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 long-term debt and lease obligation, classified as noncurrent.</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> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -SubTopic 10<br> -Topic 210<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(16)(a)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-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;">us-gaap_LongTermDebtAndCapitalLeaseObligations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_LongTermDebtAndCapitalLeaseObligationsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 long-term debt and lease obligation, classified as current.</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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-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;">us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_CreditFacilityAxis=us-gaap_SecuredDebtMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_SecuredDebtMember</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=wprt_EDCLoanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=wprt_EDCLoanMember</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>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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Long-term debt - Narrative (Details)<br></strong></div></th>
<th class="th">
<div>Dec. 13, 2021 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=us-gaap_SecuredDebtMember', window );">Secured Debt | EDC</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_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</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_DebtInstrumentFaceAmount', window );">Long-term debt</a></td>
<td class="nump">$ 20,000,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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/exampleRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482949/835-30-55-8<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481568/470-20-55-69B<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69C<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481568/470-20-55-69C<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482900/835-30-50-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482925/835-30-45-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;">us-gaap_DebtInstrumentFaceAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-8A<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-2<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-4<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-3<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(f))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482949/835-30-55-8<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481568/470-20-55-69B<br><br>Reference 10: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69C<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481568/470-20-55-69C<br><br>Reference 11: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69E<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481568/470-20-55-69E<br><br>Reference 12: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69F<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481568/470-20-55-69F<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 15: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1D<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1D<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1D<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1D<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1D<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1D<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1E<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1E<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1E<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1F<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1F<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1F<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1F<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1F<br> -Subparagraph (b)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1F<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1F<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1F<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1I<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1I<br><br>Reference 30: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482925/835-30-45-2<br><br>Reference 31: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482900/835-30-50-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;">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_CreditFacilityAxis=us-gaap_SecuredDebtMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_SecuredDebtMember</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=wprt_EDCLoanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=wprt_EDCLoanMember</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>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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Long-term debt - Schedule of Maturities on Senior Financing (Details) - Term loan facility (note 12)<br> $ in Thousands</strong></div></th>
<th class="th">
<div>Jun. 30, 2025 </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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear', window );">Remainder of 2025</a></td>
<td class="nump">$ 1,953<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_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths', window );">2026</a></td>
<td class="nump">2,929<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_DebtInstrumentCarryingAmount', window );">Long-term debt</a></td>
<td class="nump">$ 4,882<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_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://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -SubTopic 10<br> -Topic 210<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(16))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (b)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_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>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-8A<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-2<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-4<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-3<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(f))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482949/835-30-55-8<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481568/470-20-55-69B<br><br>Reference 10: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69C<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481568/470-20-55-69C<br><br>Reference 11: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69E<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481568/470-20-55-69E<br><br>Reference 12: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69F<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481568/470-20-55-69F<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 15: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1D<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1D<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1D<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1D<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1D<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1D<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1E<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1E<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1E<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1F<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1F<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1F<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1F<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1F<br> -Subparagraph (b)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1F<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1F<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1F<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1I<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1I<br><br>Reference 30: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482925/835-30-45-2<br><br>Reference 31: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482900/835-30-50-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;">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_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</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> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-4<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1E<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 470<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481544/470-10-50-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;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in remainder of current fiscal year.</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> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-4<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_CreditFacilityAxis=us-gaap_SecuredDebtMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_SecuredDebtMember</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>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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Share capital, stock options and other stock-based plans - Narrative (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Jun. 30, 2024</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>
</tr>
<tr class="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 );">Compensation expense</a></td>
<td class="nump">$ 451<span></span>
</td>
<td class="nump">$ 1,083<span></span>
</td>
<td class="nump">$ 736<span></span>
</td>
<td class="nump">$ 1,492<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_wprt_ShareBasedPaymentArrangementExpenseSettledInShares', window );">Stock-based compensation settled in shares</a></td>
<td class="nump">181<span></span>
</td>
<td class="nump">302<span></span>
</td>
<td class="nump">393<span></span>
</td>
<td class="nump">633<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_wprt_ShareBasedPaymentArrangementExpenseSettledInCash', window );">Stock-based compensation settled in cash</a></td>
<td class="nump">$ 270<span></span>
</td>
<td class="nump">$ 781<span></span>
</td>
<td class="nump">$ 343<span></span>
</td>
<td class="nump">$ 859<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>
</tr>
<tr class="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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation', window );">Issuance of common shares on exercise of share units (in shares)</a></td>
<td class="nump">24,273<span></span>
</td>
<td class="nump">35,210<span></span>
</td>
<td class="nump">68,071<span></span>
</td>
<td class="nump">83,862<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=wprt_ShareUnitsMember', window );">Share units</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted', window );">Granted (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">137,151<span></span>
</td>
<td class="nump">169,835<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 );">Compensation cost not yet recognized</a></td>
<td class="nump">$ 540<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 540<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Compensation cost not yet recognized, period for recognition (in years)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">1 year 7 months 6 days<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_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember', window );">Restricted Stock Units (RSUs)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted', window );">Granted (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">50,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Vesting period (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>
</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=wprt_PerformanceStockUnitsMember', window );">PSU's</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted', window );">Granted (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">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_AwardTypeAxis=wprt_DeferredShareUnitsMember', window );">DSUs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted', window );">Granted (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">137,151<span></span>
</td>
<td class="nump">119,835<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> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479983/718-10-S45-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.F)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479830/718-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(1)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-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;">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_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> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-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;">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> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-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;">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_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 over which grantee's right to exercise award under share-based payment arrangement is no longer contingent on satisfaction of service or performance condition, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, combination of market, performance or service condition.</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> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1</td>
</tr>
<tr>
<td style="padding-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_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>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(v)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(iv)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (l)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 1D<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480483/718-10-35-1D<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480483/718-10-35-3<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(03)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(03)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-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;">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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 number of non-option equity instruments granted to 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> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(01)<br> -SubTopic 10<br> -Topic 718<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted</td>
</tr>
<tr>
<td style="padding-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_StockIssuedDuringPeriodSharesShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, after forfeiture, of shares or units issued under share-based payment arrangement. Excludes shares or units issued under employee stock ownership plan (ESOP).</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> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-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;">us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-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_wprt_ShareBasedPaymentArrangementExpenseSettledInCash">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Share-Based Payment Arrangement, Expense, Settled In Cash</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;">wprt_ShareBasedPaymentArrangementExpenseSettledInCash</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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_wprt_ShareBasedPaymentArrangementExpenseSettledInShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Share-Based Payment Arrangement, Expense, Settled In Shares</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;">wprt_ShareBasedPaymentArrangementExpenseSettledInShares</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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_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_AwardTypeAxis=wprt_ShareUnitsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=wprt_ShareUnitsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=wprt_PerformanceStockUnitsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=wprt_PerformanceStockUnitsMember</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=wprt_DeferredShareUnitsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=wprt_DeferredShareUnitsMember</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>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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Share capital, stock options and other stock-based plans - Share units (Details) - Share units - $ / shares<br></strong></div></th>
<th class="th" colspan="2">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Jun. 30, 2024</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward', window );"><strong>Number&#160;of Units</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber', window );">Outstanding, beginning of period (in shares)</a></td>
<td class="nump">524,322<span></span>
</td>
<td class="nump">478,643<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted', window );">Granted (in shares)</a></td>
<td class="nump">137,151<span></span>
</td>
<td class="nump">169,835<span></span>
</td>
</tr>
<tr class="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 );">Vested and exercised (in shares)</a></td>
<td class="num">(68,071)<span></span>
</td>
<td class="num">(83,862)<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirations', window );">Forfeited/expired (in shares)</a></td>
<td class="num">(117,296)<span></span>
</td>
<td class="num">(38,406)<span></span>
</td>
</tr>
<tr class="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, end of period (in shares)</a></td>
<td class="nump">476,106<span></span>
</td>
<td class="nump">526,210<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_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingAndExercisableNumber', window );">Units outstanding and exercisable, end of period (in shares)</a></td>
<td class="nump">491<span></span>
</td>
<td class="nump">15,052<span></span>
</td>
</tr>
<tr class="ro">
<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 grant date&#160;fair value (CDN&#160;$)</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_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingWeightedAverageGrantDateFairValue', window );">Outstanding, beginning of period (in Canadian dollars per share)</a></td>
<td class="nump">$ 11.75<span></span>
</td>
<td class="nump">$ 15.68<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGrantedWeightedAverageGrantDateFairValue', window );">Granted (in Canadian dollars per share)</a></td>
<td class="nump">3.99<span></span>
</td>
<td class="nump">8.56<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_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercisedWeightedAverageGrantDateFairValue', window );">Vested and exercised (in Canadian dollars per share)</a></td>
<td class="nump">17.48<span></span>
</td>
<td class="nump">17.93<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_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirationsWeightedAverageGrantDateFairValue', window );">Forfeited/expired (in Canadian dollars per share)</a></td>
<td class="nump">11.36<span></span>
</td>
<td class="nump">26.07<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_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingWeightedAverageGrantDateFairValue', window );">Outstanding, end of period (in Canadian dollars per share)</a></td>
<td class="nump">8.78<span></span>
</td>
<td class="nump">12.23<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_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingAndExercisableWeightedAverageGrantDateFairValue', window );">Units outstanding and exercisable, end of period (in Canadian dollars per share)</a></td>
<td class="nump">$ 31.07<span></span>
</td>
<td class="nump">$ 11.41<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward</td>
</tr>
<tr>
<td style="padding-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> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(02)<br> -SubTopic 10<br> -Topic 718<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-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;">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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 under non-option equity instrument agreements that were either cancelled or expired.</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> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(03)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirations</td>
</tr>
<tr>
<td style="padding-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 number of non-option equity instruments granted to 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> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(01)<br> -SubTopic 10<br> -Topic 718<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted</td>
</tr>
<tr>
<td style="padding-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_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> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-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;">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_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_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingAndExercisableNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 and exercisable, 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>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;">wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingAndExercisableNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercisedWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 grant-date fair value of non-option equity instruments 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;">wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercisedWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirationsWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 grant-date fair value of non-option equity instruments cancelled/expired.</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;">wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirationsWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGrantedWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 non option equity instruments granted during the 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;">wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGrantedWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingAndExercisableWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 grant-date fair value of non-option equity instruments outstanding and exercisable.</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;">wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingAndExercisableWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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_wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 grant-date fair value of non-option equity instruments outstanding.</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;">wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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_AwardTypeAxis=wprt_ShareUnitsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=wprt_ShareUnitsMember</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>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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Share capital, stock options and other stock-based plans - Aggregate intrinsic values (Details)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th">
<div>Jun. 30, 2025 </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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue', window );">Outstanding</a></td>
<td class="nump">$ 2,578<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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1', window );">Exercisable</a></td>
<td class="nump">15<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue', window );">Exercised</a></td>
<td class="nump">$ 285<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_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>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(v)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(iv)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (l)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 1D<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480483/718-10-35-1D<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480483/718-10-35-3<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(03)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(03)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-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;">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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 difference between fair value of underlying shares on dates of exercise and exercise price on options exercised (or share units converted) 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> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 by which the current fair value of the underlying stock exceeds the exercise price of options outstanding.</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> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-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;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 difference between fair value of the underlying shares reserved for issuance and exercise price of vested portions of options outstanding and currently 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> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-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;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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>71
<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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Share capital, stock options and other stock-based plans - 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">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Jun. 30, 2024</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 );">Compensation expense</a></td>
<td class="nump">$ 451<span></span>
</td>
<td class="nump">$ 1,083<span></span>
</td>
<td class="nump">$ 736<span></span>
</td>
<td class="nump">$ 1,492<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 revenue</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Compensation expense</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">36<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">77<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 );">Research and 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 );">Compensation expense</a></td>
<td class="nump">15<span></span>
</td>
<td class="nump">53<span></span>
</td>
<td class="nump">28<span></span>
</td>
<td class="nump">163<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_GeneralAndAdministrativeExpenseMember', window );">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 );">Compensation expense</a></td>
<td class="nump">433<span></span>
</td>
<td class="nump">945<span></span>
</td>
<td class="nump">680<span></span>
</td>
<td class="nump">1,144<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_SellingAndMarketingExpenseMember', window );">Sales and marketing</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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 );">Compensation expense</a></td>
<td class="nump">$ 3<span></span>
</td>
<td class="nump">$ 49<span></span>
</td>
<td class="nump">$ 28<span></span>
</td>
<td class="nump">$ 108<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> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479983/718-10-S45-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.F)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479830/718-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(1)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-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;">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>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-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;">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_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_GeneralAndAdministrativeExpenseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_GeneralAndAdministrativeExpenseMember</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_SellingAndMarketingExpenseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_SellingAndMarketingExpenseMember</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>72
<FILENAME>R64.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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Related party transactions (Details) - Cespira - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Dec. 31, 2024</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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherReceivablesNetCurrent', window );">Receivables</a></td>
<td class="nump">$ 12,505<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 12,505<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 4,973<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_AccountsPayableCurrentAndNoncurrent', window );">Payables</a></td>
<td class="nump">2,001<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,001<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,137<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=wprt_CespiraMember', window );">Sales of goods, services, and other income</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Transaction amount</a></td>
<td class="nump">9,721<span></span>
</td>
<td class="nump">$ 534<span></span>
</td>
<td class="nump">15,280<span></span>
</td>
<td class="nump">$ 534<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=wprt_CespiraMember', window );">Inventory purchased, services and other expenses</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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 );">Transaction amount</a></td>
<td class="nump">$ 1,288<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 1,898<span></span>
</td>
<td class="nump">$ 0<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_AccountsPayableCurrentAndNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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.</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> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(15)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(15)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-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;">us-gaap_AccountsPayableCurrentAndNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_OtherReceivablesNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, of receivables classified as other, 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>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_OtherReceivablesNetCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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> -Topic 850<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483326/850-10-50-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;">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>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 850<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483326/850-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 850<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483326/850-10-50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 850<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483326/850-10-50-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(k)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(k)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 13<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481990/310-10-45-13<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(2)(c)(2)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(2)(c)(2)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(2)(g)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-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;">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_RelatedPartyTransactionsByRelatedPartyAxis=wprt_CespiraMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=wprt_CespiraMember</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=wprt_SalesOfGoodsServicesAndOtherIncomeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=wprt_SalesOfGoodsServicesAndOtherIncomeMember</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=wprt_InventoryPurchasedServicesAndOtherExpensesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=wprt_InventoryPurchasedServicesAndOtherExpensesMember</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>R65.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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Segment information - Narrative (Details)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
</tr>
<tr>
<th class="th">
<div>Jun. 30, 2025 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Jun. 30, 2024 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Jun. 30, 2025 </div>
<div>USD ($) </div>
<div>segment</div>
</th>
<th class="th">
<div>Jun. 30, 2024 </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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [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_NumberOfReportableSegments', window );">Number of reportable segments | segment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentExpenditureAdditionToLongLivedAssets', window );">Total consolidated</a></td>
<td class="nump">$ 822<span></span>
</td>
<td class="nump">$ 1,262<span></span>
</td>
<td class="nump">$ 1,395<span></span>
</td>
<td class="nump">$ 2,006<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_StatementBusinessSegmentsAxis=wprt_CespiraMember', window );">Cespira | Operating Segments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [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_SegmentExpenditureAdditionToLongLivedAssets', window );">Total consolidated</a></td>
<td class="nump">$ 322<span></span>
</td>
<td class="nump">$ 10<span></span>
</td>
<td class="nump">$ 1,571<span></span>
</td>
<td class="nump">$ 10<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_NumberOfReportableSegments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 segments reported by the entity. A reportable segment is a component of an entity for which there is an accounting requirement to report separate financial information on that component in the entity's financial statements.</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> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 47<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-47<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 54<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-54<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 18<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-18<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NumberOfReportableSegments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_SegmentExpenditureAdditionToLongLivedAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 expenditure for addition to long-lived assets included in determination of segment assets by chief operating decision maker (CODM) or otherwise regularly provided to CODM. Excludes expenditure for addition to financial instrument, long-term customer relationship of financial institution, mortgage and other servicing rights, deferred policy acquisition cost, and deferred tax 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/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 49<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-49<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 25<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-25<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentExpenditureAdditionToLongLivedAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_SegmentReportingInformationLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_SegmentReportingInformationLineItems</td>
</tr>
<tr>
<td style="padding-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_StatementBusinessSegmentsAxis=wprt_CespiraMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_StatementBusinessSegmentsAxis=wprt_CespiraMember</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_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember</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>R66.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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Segment information - Financial information by business segment (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Jun. 30, 2024</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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">$ 12,498<span></span>
</td>
<td class="nump">$ 14,109<span></span>
</td>
<td class="nump">$ 19,821<span></span>
</td>
<td class="nump">$ 28,537<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 revenue</a></td>
<td class="nump">11,656<span></span>
</td>
<td class="nump">11,750<span></span>
</td>
<td class="nump">17,444<span></span>
</td>
<td class="nump">26,720<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 profit</a></td>
<td class="nump">842<span></span>
</td>
<td class="nump">2,359<span></span>
</td>
<td class="nump">2,377<span></span>
</td>
<td class="nump">1,817<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_ResearchAndDevelopmentExpense', window );">Research and development</a></td>
<td class="nump">1,574<span></span>
</td>
<td class="nump">3,460<span></span>
</td>
<td class="nump">2,867<span></span>
</td>
<td class="nump">7,809<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_wprt_ResearchAndDevelopmentExpenseAdjustmentForRounding', window );">Research and development</a></td>
<td class="nump">1,657<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_GeneralAndAdministrativeExpense', window );">General and administrative</a></td>
<td class="nump">4,106<span></span>
</td>
<td class="nump">5,720<span></span>
</td>
<td class="nump">6,778<span></span>
</td>
<td class="nump">12,915<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SellingAndMarketingExpense', window );">Sales and marketing</a></td>
<td class="nump">290<span></span>
</td>
<td class="nump">962<span></span>
</td>
<td class="nump">733<span></span>
</td>
<td class="nump">2,083<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_DepreciationAmortizationAndAccretionNet', window );">Depreciation and amortization</a></td>
<td class="nump">106<span></span>
</td>
<td class="nump">98<span></span>
</td>
<td class="nump">214<span></span>
</td>
<td class="nump">456<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 );">Operating expenses</a></td>
<td class="nump">6,159<span></span>
</td>
<td class="nump">10,240<span></span>
</td>
<td class="nump">10,592<span></span>
</td>
<td class="nump">23,263<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DepreciationDepletionAndAmortization', window );">Add back: Depreciation &amp; amortization</a></td>
<td class="nump">219<span></span>
</td>
<td class="nump">169<span></span>
</td>
<td class="nump">397<span></span>
</td>
<td class="nump">1,867<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_wprt_SegmentEarningsBeforeInterestTaxDepreciationAndAmortization', window );">Segment EBITDA</a></td>
<td class="num">(8,087)<span></span>
</td>
<td class="num">(4,478)<span></span>
</td>
<td class="num">(12,829)<span></span>
</td>
<td class="num">(10,714)<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_IncomeLossFromEquityMethodInvestments', window );">Equity income (loss)</a></td>
<td class="num">(3,686)<span></span>
</td>
<td class="num">(1,102)<span></span>
</td>
<td class="num">(7,570)<span></span>
</td>
<td class="num">(1,102)<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_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember', window );">Operating Segments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">24,518<span></span>
</td>
<td class="nump">18,168<span></span>
</td>
<td class="nump">48,640<span></span>
</td>
<td class="nump">32,596<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 revenue</a></td>
<td class="nump">25,602<span></span>
</td>
<td class="nump">15,651<span></span>
</td>
<td class="nump">47,674<span></span>
</td>
<td class="nump">30,621<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 profit</a></td>
<td class="num">(1,084)<span></span>
</td>
<td class="nump">2,517<span></span>
</td>
<td class="nump">966<span></span>
</td>
<td class="nump">1,975<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_ResearchAndDevelopmentExpense', window );">Research and development</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,581<span></span>
</td>
<td class="nump">7,757<span></span>
</td>
<td class="nump">8,930<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_wprt_ResearchAndDevelopmentExpenseAdjustmentForRounding', window );">Research and development</a></td>
<td class="nump">3,545<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_GeneralAndAdministrativeExpense', window );">General and administrative</a></td>
<td class="nump">3,112<span></span>
</td>
<td class="nump">2,174<span></span>
</td>
<td class="nump">6,223<span></span>
</td>
<td class="nump">4,130<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SellingAndMarketingExpense', window );">Sales and marketing</a></td>
<td class="nump">348<span></span>
</td>
<td class="nump">551<span></span>
</td>
<td class="nump">791<span></span>
</td>
<td class="nump">1,280<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DepreciationAmortizationAndAccretionNet', window );">Depreciation and amortization</a></td>
<td class="nump">919<span></span>
</td>
<td class="nump">312<span></span>
</td>
<td class="nump">1,705<span></span>
</td>
<td class="nump">471<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 );">Operating expenses</a></td>
<td class="nump">7,924<span></span>
</td>
<td class="nump">7,618<span></span>
</td>
<td class="nump">16,476<span></span>
</td>
<td class="nump">14,811<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_DepreciationDepletionAndAmortization', window );">Add back: Depreciation &amp; amortization</a></td>
<td class="nump">921<span></span>
</td>
<td class="nump">623<span></span>
</td>
<td class="nump">2,681<span></span>
</td>
<td class="nump">2,122<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_wprt_SegmentEarningsBeforeInterestTaxDepreciationAndAmortization', window );">Segment EBITDA</a></td>
<td class="num">(8,087)<span></span>
</td>
<td class="num">(4,478)<span></span>
</td>
<td class="num">(12,829)<span></span>
</td>
<td class="num">(10,714)<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_IncomeLossFromEquityMethodInvestments', window );">Equity income (loss)</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">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_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember', window );">Operating Segments | High-Pressure Controls &amp; Systems</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">2,896<span></span>
</td>
<td class="nump">3,562<span></span>
</td>
<td class="nump">4,786<span></span>
</td>
<td class="nump">6,049<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 revenue</a></td>
<td class="nump">2,791<span></span>
</td>
<td class="nump">2,453<span></span>
</td>
<td class="nump">4,168<span></span>
</td>
<td class="nump">4,413<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 profit</a></td>
<td class="nump">105<span></span>
</td>
<td class="nump">1,109<span></span>
</td>
<td class="nump">618<span></span>
</td>
<td class="nump">1,636<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_ResearchAndDevelopmentExpense', window );">Research and development</a></td>
<td class="nump">1,635<span></span>
</td>
<td class="nump">1,408<span></span>
</td>
<td class="nump">2,734<span></span>
</td>
<td class="nump">2,951<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GeneralAndAdministrativeExpense', window );">General and administrative</a></td>
<td class="nump">386<span></span>
</td>
<td class="nump">303<span></span>
</td>
<td class="nump">705<span></span>
</td>
<td class="nump">496<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_SellingAndMarketingExpense', window );">Sales and marketing</a></td>
<td class="nump">23<span></span>
</td>
<td class="nump">130<span></span>
</td>
<td class="nump">150<span></span>
</td>
<td class="nump">362<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DepreciationAmortizationAndAccretionNet', window );">Depreciation and amortization</a></td>
<td class="nump">59<span></span>
</td>
<td class="nump">43<span></span>
</td>
<td class="nump">115<span></span>
</td>
<td class="nump">85<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_OperatingExpenses', window );">Operating expenses</a></td>
<td class="nump">2,103<span></span>
</td>
<td class="nump">1,884<span></span>
</td>
<td class="nump">3,704<span></span>
</td>
<td class="nump">3,894<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DepreciationDepletionAndAmortization', window );">Add back: Depreciation &amp; amortization</a></td>
<td class="nump">149<span></span>
</td>
<td class="nump">118<span></span>
</td>
<td class="nump">289<span></span>
</td>
<td class="nump">226<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_wprt_SegmentEarningsBeforeInterestTaxDepreciationAndAmortization', window );">Segment EBITDA</a></td>
<td class="num">(1,849)<span></span>
</td>
<td class="num">(657)<span></span>
</td>
<td class="num">(2,797)<span></span>
</td>
<td class="num">(2,032)<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_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember', window );">Operating Segments | Heavy-Duty OEM</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">9,602<span></span>
</td>
<td class="nump">10,547<span></span>
</td>
<td class="nump">15,035<span></span>
</td>
<td class="nump">22,488<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 revenue</a></td>
<td class="nump">8,865<span></span>
</td>
<td class="nump">9,297<span></span>
</td>
<td class="nump">13,276<span></span>
</td>
<td class="nump">22,307<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 profit</a></td>
<td class="nump">737<span></span>
</td>
<td class="nump">1,250<span></span>
</td>
<td class="nump">1,759<span></span>
</td>
<td class="nump">181<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_ResearchAndDevelopmentExpense', window );">Research and development</a></td>
<td class="nump">22<span></span>
</td>
<td class="nump">2,052<span></span>
</td>
<td class="nump">133<span></span>
</td>
<td class="nump">4,858<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GeneralAndAdministrativeExpense', window );">General and administrative</a></td>
<td class="nump">34<span></span>
</td>
<td class="nump">1,156<span></span>
</td>
<td class="nump">99<span></span>
</td>
<td class="nump">2,919<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_SellingAndMarketingExpense', window );">Sales and marketing</a></td>
<td class="nump">3<span></span>
</td>
<td class="nump">352<span></span>
</td>
<td class="nump">23<span></span>
</td>
<td class="nump">849<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DepreciationAmortizationAndAccretionNet', window );">Depreciation and amortization</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">4<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">121<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_OperatingExpenses', window );">Operating expenses</a></td>
<td class="nump">59<span></span>
</td>
<td class="nump">3,564<span></span>
</td>
<td class="nump">255<span></span>
</td>
<td class="nump">8,747<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DepreciationDepletionAndAmortization', window );">Add back: Depreciation &amp; amortization</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,391<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_wprt_SegmentEarningsBeforeInterestTaxDepreciationAndAmortization', window );">Segment EBITDA</a></td>
<td class="nump">678<span></span>
</td>
<td class="num">(2,314)<span></span>
</td>
<td class="nump">1,504<span></span>
</td>
<td class="num">(7,175)<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_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember', window );">Operating Segments | Cespira</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">12,020<span></span>
</td>
<td class="nump">4,059<span></span>
</td>
<td class="nump">28,819<span></span>
</td>
<td class="nump">4,059<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 revenue</a></td>
<td class="nump">13,946<span></span>
</td>
<td class="nump">3,901<span></span>
</td>
<td class="nump">30,230<span></span>
</td>
<td class="nump">3,901<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 profit</a></td>
<td class="num">(1,926)<span></span>
</td>
<td class="nump">158<span></span>
</td>
<td class="num">(1,411)<span></span>
</td>
<td class="nump">158<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_ResearchAndDevelopmentExpense', window );">Research and development</a></td>
<td class="nump">1,888<span></span>
</td>
<td class="nump">1,121<span></span>
</td>
<td class="nump">4,890<span></span>
</td>
<td class="nump">1,121<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GeneralAndAdministrativeExpense', window );">General and administrative</a></td>
<td class="nump">2,692<span></span>
</td>
<td class="nump">715<span></span>
</td>
<td class="nump">5,419<span></span>
</td>
<td class="nump">715<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_SellingAndMarketingExpense', window );">Sales and marketing</a></td>
<td class="nump">322<span></span>
</td>
<td class="nump">69<span></span>
</td>
<td class="nump">618<span></span>
</td>
<td class="nump">69<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DepreciationAmortizationAndAccretionNet', window );">Depreciation and amortization</a></td>
<td class="nump">860<span></span>
</td>
<td class="nump">265<span></span>
</td>
<td class="nump">1,590<span></span>
</td>
<td class="nump">265<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_OperatingExpenses', window );">Operating expenses</a></td>
<td class="nump">5,762<span></span>
</td>
<td class="nump">2,170<span></span>
</td>
<td class="nump">12,517<span></span>
</td>
<td class="nump">2,170<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DepreciationDepletionAndAmortization', window );">Add back: Depreciation &amp; amortization</a></td>
<td class="nump">772<span></span>
</td>
<td class="nump">505<span></span>
</td>
<td class="nump">2,392<span></span>
</td>
<td class="nump">505<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_wprt_SegmentEarningsBeforeInterestTaxDepreciationAndAmortization', window );">Segment EBITDA</a></td>
<td class="num">(6,916)<span></span>
</td>
<td class="num">(1,507)<span></span>
</td>
<td class="num">(11,536)<span></span>
</td>
<td class="num">(1,507)<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_ConsolidationItemsAxis=srt_ConsolidationEliminationsMember', window );">Consolidation, Eliminations</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="num">(12,020)<span></span>
</td>
<td class="num">(4,059)<span></span>
</td>
<td class="num">(28,819)<span></span>
</td>
<td class="num">(4,059)<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 revenue</a></td>
<td class="num">(13,946)<span></span>
</td>
<td class="num">(3,901)<span></span>
</td>
<td class="num">(30,230)<span></span>
</td>
<td class="num">(3,901)<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 profit</a></td>
<td class="nump">1,926<span></span>
</td>
<td class="num">(158)<span></span>
</td>
<td class="nump">1,411<span></span>
</td>
<td class="num">(158)<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_ResearchAndDevelopmentExpense', window );">Research and development</a></td>
<td class="num">(1,888)<span></span>
</td>
<td class="num">(1,121)<span></span>
</td>
<td class="num">(4,890)<span></span>
</td>
<td class="num">(1,121)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GeneralAndAdministrativeExpense', window );">General and administrative</a></td>
<td class="num">(2,692)<span></span>
</td>
<td class="num">(715)<span></span>
</td>
<td class="num">(5,419)<span></span>
</td>
<td class="num">(715)<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_SellingAndMarketingExpense', window );">Sales and marketing</a></td>
<td class="num">(322)<span></span>
</td>
<td class="num">(69)<span></span>
</td>
<td class="num">(618)<span></span>
</td>
<td class="num">(69)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DepreciationAmortizationAndAccretionNet', window );">Depreciation and amortization</a></td>
<td class="num">(860)<span></span>
</td>
<td class="num">(265)<span></span>
</td>
<td class="num">(1,590)<span></span>
</td>
<td class="num">(265)<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_OperatingExpenses', window );">Operating expenses</a></td>
<td class="num">(5,762)<span></span>
</td>
<td class="num">(2,170)<span></span>
</td>
<td class="num">(12,517)<span></span>
</td>
<td class="num">(2,170)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromEquityMethodInvestments', window );">Equity income (loss)</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">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_ConsolidationItemsAxis=us-gaap_CorporateNonSegmentMember', window );">Corporate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</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">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_CostOfGoodsAndServicesSold', window );">Cost of revenue</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">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_GrossProfit', window );">Gross profit</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">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_ResearchAndDevelopmentExpense', window );">Research and development</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">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_GeneralAndAdministrativeExpense', window );">General and administrative</a></td>
<td class="nump">3,686<span></span>
</td>
<td class="nump">4,261<span></span>
</td>
<td class="nump">5,974<span></span>
</td>
<td class="nump">9,500<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SellingAndMarketingExpense', window );">Sales and marketing</a></td>
<td class="nump">264<span></span>
</td>
<td class="nump">480<span></span>
</td>
<td class="nump">560<span></span>
</td>
<td class="nump">872<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_DepreciationAmortizationAndAccretionNet', window );">Depreciation and amortization</a></td>
<td class="nump">47<span></span>
</td>
<td class="nump">51<span></span>
</td>
<td class="nump">99<span></span>
</td>
<td class="nump">250<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 );">Operating expenses</a></td>
<td class="nump">3,997<span></span>
</td>
<td class="nump">4,792<span></span>
</td>
<td class="nump">6,633<span></span>
</td>
<td class="nump">10,622<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_IncomeLossFromEquityMethodInvestments', window );">Equity income (loss)</a></td>
<td class="num">$ (3,686)<span></span>
</td>
<td class="num">$ (1,102)<span></span>
</td>
<td class="num">$ (7,570)<span></span>
</td>
<td class="num">$ (1,102)<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_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/exampleRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4A<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4A<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-11<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-4<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(2)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(2)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 924<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479941/924-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476148/220-40-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_DepreciationAmortizationAndAccretionNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 net amount of depreciation, amortization, and accretion recognized during an accounting period. As a noncash item, the net amount is added back to net income when calculating cash provided by or used in operations using the indirect 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> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DepreciationAmortizationAndAccretionNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DepreciationDepletionAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the 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> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476148/220-40-50-12<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 49<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-49<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476148/220-40-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DepreciationDepletionAndAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_GeneralAndAdministrativeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 of expenses of managing and administering the affairs of an entity, including affiliates of the reporting entity, which are not directly or indirectly associated with the manufacture, sale or creation of a product or product line.</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> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(2)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-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;">us-gaap_GeneralAndAdministrativeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 10: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 11: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 12: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 16: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 25: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-31<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_IncomeLossFromEquityMethodInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 (loss) for proportionate share of equity method investee's income (loss).</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> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(10))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481664/323-10-45-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(12))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(13)(f))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-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;">us-gaap_IncomeLossFromEquityMethodInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingExpenses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_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>Amount of expense for research and development. Includes, but is not limited to, cost for computer software product to be sold, leased, or otherwise marketed and writeoff of research and development assets acquired in transaction other than business combination or joint venture formation or both. Excludes write-down of intangible asset acquired in business combination or from joint venture formation or both, used in research and development 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> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 18<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-18<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-14<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 985<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481283/985-20-50-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 730<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482916/730-10-50-1<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 912<br> -SubTopic 730<br> -Name Accounting Standards Codification<br> -Section 25<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479532/912-730-25-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;">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_RevenueFromContractWithCustomerExcludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.</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> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-4<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-14<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-41<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 42<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-42<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-7<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 924<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479941/924-10-S99-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-5<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-40<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_SegmentReportingInformationLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_SegmentReportingInformationLineItems</td>
</tr>
<tr>
<td style="padding-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_SellingAndMarketingExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 amount of expenses directly related to the marketing or selling of products or services.</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_SellingAndMarketingExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_wprt_ResearchAndDevelopmentExpenseAdjustmentForRounding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Research and Development Expense, Adjustment for Rounding</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;">wprt_ResearchAndDevelopmentExpenseAdjustmentForRounding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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_wprt_SegmentEarningsBeforeInterestTaxDepreciationAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Segment Earnings Before Interest Tax Depreciation And Amortization</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;">wprt_SegmentEarningsBeforeInterestTaxDepreciationAndAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember</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_StatementBusinessSegmentsAxis=wprt_HighPressureControlsSystemsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_StatementBusinessSegmentsAxis=wprt_HighPressureControlsSystemsMember</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_StatementBusinessSegmentsAxis=wprt_HeavyDutyOEMMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_StatementBusinessSegmentsAxis=wprt_HeavyDutyOEMMember</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_StatementBusinessSegmentsAxis=wprt_CespiraMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_StatementBusinessSegmentsAxis=wprt_CespiraMember</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_ConsolidationItemsAxis=srt_ConsolidationEliminationsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ConsolidationItemsAxis=srt_ConsolidationEliminationsMember</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_ConsolidationItemsAxis=us-gaap_CorporateNonSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ConsolidationItemsAxis=us-gaap_CorporateNonSegmentMember</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>R67.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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Segment Information - Reconciliation of Segment EBITDA to Loss before income taxes (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Jun. 30, 2024</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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_wprt_SegmentEarningsBeforeInterestTaxDepreciationAndAmortization', window );">Segment EBITDA</a></td>
<td class="num">$ (8,087)<span></span>
</td>
<td class="num">$ (4,478)<span></span>
</td>
<td class="num">$ (12,829)<span></span>
</td>
<td class="num">$ (10,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_wprt_DepreciationDepletionAndAmortizationAdjusted', window );">Depreciation and amortization</a></td>
<td class="nump">196<span></span>
</td>
<td class="nump">169<span></span>
</td>
<td class="nump">388<span></span>
</td>
<td class="nump">1,867<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquityMethodInvestmentRealizedGainLossOnDisposal', window );">Loss on sale of investment (note 8)</a></td>
<td class="nump">3,686<span></span>
</td>
<td class="nump">1,102<span></span>
</td>
<td class="nump">7,570<span></span>
</td>
<td class="nump">1,102<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_ForeignCurrencyTransactionGainLossBeforeTax', window );">Unrealized foreign exchange loss</a></td>
<td class="num">(4,224)<span></span>
</td>
<td class="num">(141)<span></span>
</td>
<td class="num">(5,427)<span></span>
</td>
<td class="nump">1,795<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeconsolidationGainOrLossAmount', window );">Gain on deconsolidation (note 5)</a></td>
<td class="nump">0<span></span>
</td>
<td class="num">(13,266)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(13,266)<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_InterestExpenseDebt', window );">Interest on long-term debt and accretion of royalty payable</a></td>
<td class="nump">166<span></span>
</td>
<td class="nump">288<span></span>
</td>
<td class="nump">358<span></span>
</td>
<td class="nump">603<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestIncomeExpenseNonoperatingNet', window );">Interest and other income, net of bank charges</a></td>
<td class="nump">147<span></span>
</td>
<td class="num">(95)<span></span>
</td>
<td class="num">(502)<span></span>
</td>
<td class="num">(21)<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_wprt_IncomeLossFromContinuingOperationsBeforeIncomeTaxesNoncontrollingInterestAdjustmentForRounding', window );">Loss before income taxes in continuing operations</a></td>
<td class="num">(5,092)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Income (loss) before income taxes</a></td>
<td class="num">(5,009)<span></span>
</td>
<td class="nump">4,231<span></span>
</td>
<td class="num">(10,214)<span></span>
</td>
<td class="num">(11,659)<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_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember', window );">Operating Segments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_wprt_SegmentEarningsBeforeInterestTaxDepreciationAndAmortization', window );">Segment EBITDA</a></td>
<td class="num">(8,087)<span></span>
</td>
<td class="num">(4,478)<span></span>
</td>
<td class="num">(12,829)<span></span>
</td>
<td class="num">(10,714)<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_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember', window );">Operating Segments | Cespira</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_wprt_SegmentEarningsBeforeInterestTaxDepreciationAndAmortization', window );">Segment EBITDA</a></td>
<td class="num">(6,916)<span></span>
</td>
<td class="num">(1,507)<span></span>
</td>
<td class="num">(11,536)<span></span>
</td>
<td class="num">(1,507)<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_ConsolidationItemsAxis=us-gaap_CorporateNonSegmentMember', window );">Corporate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [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_OperatingCostsAndExpenses', window );">Corporate and unallocated operating expenses</a></td>
<td class="nump">$ 3,950<span></span>
</td>
<td class="nump">$ 4,741<span></span>
</td>
<td class="nump">$ 6,534<span></span>
</td>
<td class="nump">$ 10,372<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_DeconsolidationGainOrLossAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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) from deconsolidation of subsidiary and derecognition of group of assets constituting transfer of business or nonprofit activity, excluding conveyance of oil and gas mineral rights and transfer of good or service in contract with customer.</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> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-1B<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 21<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476148/220-40-50-21<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeconsolidationGainOrLossAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_EquityMethodInvestmentRealizedGainLossOnDisposal">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 an equity method investment.</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> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(9)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(7)(c))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EquityMethodInvestmentRealizedGainLossOnDisposal</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_ForeignCurrencyTransactionGainLossBeforeTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 tax, of realized and unrealized gain (loss) from foreign currency transaction.</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> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482014/830-20-35-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481956/830-20-45-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481926/830-20-50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481839/830-10-45-17<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (o)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476148/220-40-50-22<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ForeignCurrencyTransactionGainLossBeforeTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.</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> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-4<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 21<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-21<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 220<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476153/220-40-55-14<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478671/942-235-S50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-1<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 11: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 12: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(11))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 14: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-31<br><br>Reference 15: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(10))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 16: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(15))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-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;">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_InterestExpenseDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 for 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> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69E<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481568/470-20-55-69E<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69F<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481568/470-20-55-69F<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1F<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1F<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479105/946-220-45-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InterestExpenseDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_InterestIncomeExpenseNonoperatingNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 interest income (expense) classified as nonoperating.</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> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4A<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4A<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InterestIncomeExpenseNonoperatingNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_OperatingCostsAndExpenses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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. Excludes 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_OperatingCostsAndExpenses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_SegmentReportingInformationLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_SegmentReportingInformationLineItems</td>
</tr>
<tr>
<td style="padding-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_wprt_DepreciationDepletionAndAmortizationAdjusted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Depreciation, Depletion And Amortization, Adjusted</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;">wprt_DepreciationDepletionAndAmortizationAdjusted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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_wprt_IncomeLossFromContinuingOperationsBeforeIncomeTaxesNoncontrollingInterestAdjustmentForRounding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest, Adjustment for Rounding</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;">wprt_IncomeLossFromContinuingOperationsBeforeIncomeTaxesNoncontrollingInterestAdjustmentForRounding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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_wprt_SegmentEarningsBeforeInterestTaxDepreciationAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Segment Earnings Before Interest Tax Depreciation And Amortization</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;">wprt_SegmentEarningsBeforeInterestTaxDepreciationAndAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember</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_StatementBusinessSegmentsAxis=wprt_CespiraMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_StatementBusinessSegmentsAxis=wprt_CespiraMember</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_ConsolidationItemsAxis=us-gaap_CorporateNonSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ConsolidationItemsAxis=us-gaap_CorporateNonSegmentMember</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>R68.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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Segment information - Assets (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Jun. 30, 2024</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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [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_SegmentExpenditureAdditionToLongLivedAssets', window );">Total consolidated</a></td>
<td class="nump">$ 822<span></span>
</td>
<td class="nump">$ 1,262<span></span>
</td>
<td class="nump">$ 1,395<span></span>
</td>
<td class="nump">$ 2,006<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_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember', window );">Operating Segments | High-Pressure Controls &amp; Systems</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [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_SegmentExpenditureAdditionToLongLivedAssets', window );">Total consolidated</a></td>
<td class="nump">821<span></span>
</td>
<td class="nump">991<span></span>
</td>
<td class="nump">1,379<span></span>
</td>
<td class="nump">1,437<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_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember', window );">Operating Segments | Heavy-Duty OEM</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [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_SegmentExpenditureAdditionToLongLivedAssets', window );">Total consolidated</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">271<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">569<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_ConsolidationItemsAxis=us-gaap_CorporateNonSegmentMember', window );">Corporate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [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_SegmentExpenditureAdditionToLongLivedAssets', window );">Total consolidated</a></td>
<td class="nump">$ 1<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 16<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_us-gaap_SegmentExpenditureAdditionToLongLivedAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 expenditure for addition to long-lived assets included in determination of segment assets by chief operating decision maker (CODM) or otherwise regularly provided to CODM. Excludes expenditure for addition to financial instrument, long-term customer relationship of financial institution, mortgage and other servicing rights, deferred policy acquisition cost, and deferred tax 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/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 49<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-49<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 25<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-25<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentExpenditureAdditionToLongLivedAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_SegmentReportingInformationLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_SegmentReportingInformationLineItems</td>
</tr>
<tr>
<td style="padding-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_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember</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_StatementBusinessSegmentsAxis=wprt_HighPressureControlsSystemsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_StatementBusinessSegmentsAxis=wprt_HighPressureControlsSystemsMember</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_StatementBusinessSegmentsAxis=wprt_HeavyDutyOEMMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_StatementBusinessSegmentsAxis=wprt_HeavyDutyOEMMember</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_ConsolidationItemsAxis=us-gaap_CorporateNonSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ConsolidationItemsAxis=us-gaap_CorporateNonSegmentMember</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>R69.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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Segment information - Percent of revenue by geographical location (Details) - Geographic Concentration Risk - Revenue, Product and Service Benchmark<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Jun. 30, 2024</div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Jun. 30, 2024</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=srt_EuropeMember', window );">Europe</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [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_ConcentrationRiskPercentage1', window );">Concentration percentage</a></td>
<td class="nump">79.00%<span></span>
</td>
<td class="nump">85.00%<span></span>
</td>
<td class="nump">79.00%<span></span>
</td>
<td class="nump">87.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_StatementGeographicalAxis=srt_AsiaMember', window );">Asia</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [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_ConcentrationRiskPercentage1', window );">Concentration percentage</a></td>
<td class="nump">16.00%<span></span>
</td>
<td class="nump">11.00%<span></span>
</td>
<td class="nump">14.00%<span></span>
</td>
<td class="nump">10.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_StatementGeographicalAxis=srt_AmericasMember', window );">Americas</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [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_ConcentrationRiskPercentage1', window );">Concentration percentage</a></td>
<td class="nump">5.00%<span></span>
</td>
<td class="nump">4.00%<span></span>
</td>
<td class="nump">7.00%<span></span>
</td>
<td class="nump">3.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_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> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 42<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-42<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 275<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-18<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 275<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 18<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-18<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 275<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 20<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-20<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 275<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-18<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 275<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-18<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 275<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-18<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_SegmentReportingInformationLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_SegmentReportingInformationLineItems</td>
</tr>
<tr>
<td style="padding-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_StatementGeographicalAxis=srt_EuropeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=srt_EuropeMember</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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueProductLineMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_SalesRevenueProductLineMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=srt_AsiaMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=srt_AsiaMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=srt_AmericasMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=srt_AmericasMember</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>78
<FILENAME>R70.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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Segment Information - Total asset allocation (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Jun. 30, 2025</div></th>
<th class="th"><div>Dec. 31, 2024</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_SegmentReportingAssetReconcilingItemLineItems', window );"><strong>Segment Reporting, Asset Reconciling Item [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_Assets', window );">Total assets</a></td>
<td class="nump">$ 272,054<span></span>
</td>
<td class="nump">$ 291,621<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_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember', window );">Operating Segments | Light-Duty (Held-for-sale)</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_SegmentReportingAssetReconcilingItemLineItems', window );"><strong>Segment Reporting, Asset Reconciling Item [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_Assets', window );">Total assets</a></td>
<td class="nump">201,719<span></span>
</td>
<td class="nump">207,893<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_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember', window );">Operating Segments | High-Pressure Controls &amp; Systems</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_SegmentReportingAssetReconcilingItemLineItems', window );"><strong>Segment Reporting, Asset Reconciling Item [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_Assets', window );">Total assets</a></td>
<td class="nump">14,112<span></span>
</td>
<td class="nump">9,026<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_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember', window );">Operating Segments | Heavy-Duty OEM</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_SegmentReportingAssetReconcilingItemLineItems', window );"><strong>Segment Reporting, Asset Reconciling Item [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_Assets', window );">Total assets</a></td>
<td class="nump">12,429<span></span>
</td>
<td class="nump">9,138<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_ConsolidationItemsAxis=us-gaap_CorporateNonSegmentMember', window );">Corporate</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_SegmentReportingAssetReconcilingItemLineItems', window );"><strong>Segment Reporting, Asset Reconciling Item [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_Assets', window );">Total assets</a></td>
<td class="nump">$ 43,794<span></span>
</td>
<td class="nump">$ 65,564<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_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>Amount of asset recognized for present right to economic benefit.</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> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478671/942-235-S50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 480<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 64<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481620/480-10-55-64<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 944<br> -SubTopic 605<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477548/944-605-55-14<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 944<br> -SubTopic 605<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477548/944-605-55-11<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 10: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 49<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-49<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 13: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-25<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 19: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 20: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-12<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(12))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 25: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 26: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 35: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 37: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(11))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-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;">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_SegmentReportingAssetReconcilingItemLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_SegmentReportingAssetReconcilingItemLineItems</td>
</tr>
<tr>
<td style="padding-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_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember</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_StatementBusinessSegmentsAxis=wprt_LightDutyMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_StatementBusinessSegmentsAxis=wprt_LightDutyMember</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_StatementBusinessSegmentsAxis=wprt_HighPressureControlsSystemsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_StatementBusinessSegmentsAxis=wprt_HighPressureControlsSystemsMember</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_StatementBusinessSegmentsAxis=wprt_HeavyDutyOEMMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_StatementBusinessSegmentsAxis=wprt_HeavyDutyOEMMember</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_ConsolidationItemsAxis=us-gaap_CorporateNonSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ConsolidationItemsAxis=us-gaap_CorporateNonSegmentMember</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>79
<FILENAME>R71.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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Financial instruments - Narrative (Details)<br> $ in Thousands</strong></div></th>
<th class="th">
<div>Jun. 30, 2025 </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_wprt_FinancialInstrumentsDisclosureAbstract', window );"><strong>Financial Instruments 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_CashCashEquivalentsAndShortTermInvestments', window );">Cash, cash equivalents and short-term investments</a></td>
<td class="nump">$ 6,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_RestrictedCashAndCashEquivalents', window );">Restricted cash</a></td>
<td class="nump">$ 397<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_CashCashEquivalentsAndShortTermInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 includes currency on hand as well as demand deposits with banks or financial institutions. It also includes other kinds of accounts that have the general characteristics of demand deposits in that the customer may deposit additional funds at any time and effectively may withdraw funds at any time without prior notice or penalty. Cash equivalents, excluding items classified as marketable securities, include short-term, highly liquid Investments that are both readily convertible to known amounts of cash, and so near their maturity that they present minimal risk of changes in value because of changes in interest rates. Generally, only investments with original maturities of three months or less qualify under that definition. Original maturity means original maturity to the entity holding the investment. For example, both a three-month US Treasury bill and a three-year Treasury note purchased three months from maturity qualify as cash equivalents. However, a Treasury note purchased three years ago does not become a cash equivalent when its remaining maturity is three months. Short-term investments, exclusive of cash equivalents, generally consist of marketable securities intended to be sold within one year (or the normal operating cycle if longer) and may include trading securities, available-for-sale securities, or held-to-maturity securities (if maturing within one year), as applicable.</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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-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;">us-gaap_CashCashEquivalentsAndShortTermInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_RestrictedCashAndCashEquivalents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 equivalent restricted as to withdrawal or usage. Cash includes, but is not limited to, currency on hand, demand deposit with financial institution, and account with general characteristic of demand deposit. Cash equivalent includes, but is not limited to, short-term, highly liquid investment that is both readily convertible to known amount of cash and so near maturity that it presents insignificant risk of change in value because of change in interest rate.</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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-8<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(1)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestrictedCashAndCashEquivalents</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_wprt_FinancialInstrumentsDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">wprt_FinancialInstrumentsDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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>80
<FILENAME>R72.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.25.2</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Financial instruments - Financial Obligations (Details)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th">
<div>Jun. 30, 2025 </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_OtherCommitmentsLineItems', window );"><strong>Other Commitments [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_ContractualObligation', window );">Carrying amount</a></td>
<td class="nump">$ 24,441<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_wprt_ContractualObligationsRepaymentsTotal', window );">Contractual cash&#160;flows</a></td>
<td class="nump">26,065<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractualObligationDueInNextTwelveMonths', window );">Contractual obligation, due less than 1 year</a></td>
<td class="nump">22,506<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_ContractualObligationDueInSecondAndThirdYear', window );">Contractual obligation, due 1-3 years</a></td>
<td class="nump">2,228<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractualObligationDueInFourthAndFifthYear', window );">Contractual obligation, due 4-5 years</a></td>
<td class="nump">1,038<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_ContractualObligationDueAfterFifthYear', window );">Contractual obligation, due after 5 years</a></td>
<td class="nump">293<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_wprt_ContractualObligationsTypeAxis=us-gaap_AccountsPayableAndAccruedLiabilitiesMember', window );">Accounts payable and accrued liabilities</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_OtherCommitmentsLineItems', window );"><strong>Other Commitments [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_ContractualObligation', window );">Carrying amount</a></td>
<td class="nump">17,594<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_wprt_ContractualObligationsRepaymentsTotal', window );">Contractual cash&#160;flows</a></td>
<td class="nump">17,594<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractualObligationDueInNextTwelveMonths', window );">Contractual obligation, due less than 1 year</a></td>
<td class="nump">17,594<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_ContractualObligationDueInSecondAndThirdYear', window );">Contractual obligation, due 1-3 years</a></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_ContractualObligationDueInFourthAndFifthYear', window );">Contractual obligation, due 4-5 years</a></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_ContractualObligationDueAfterFifthYear', window );">Contractual obligation, due after 5 years</a></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_wprt_ContractualObligationsTypeAxis=us-gaap_SecuredDebtMember', window );">Term loan facility (note 12)</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_OtherCommitmentsLineItems', window );"><strong>Other Commitments [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_ContractualObligation', window );">Carrying amount</a></td>
<td class="nump">4,882<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_wprt_ContractualObligationsRepaymentsTotal', window );">Contractual cash&#160;flows</a></td>
<td class="nump">5,601<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractualObligationDueInNextTwelveMonths', window );">Contractual obligation, due less than 1 year</a></td>
<td class="nump">4,576<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_ContractualObligationDueInSecondAndThirdYear', window );">Contractual obligation, due 1-3 years</a></td>
<td class="nump">1,025<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractualObligationDueInFourthAndFifthYear', window );">Contractual obligation, due 4-5 years</a></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_ContractualObligationDueAfterFifthYear', window );">Contractual obligation, due after 5 years</a></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_wprt_ContractualObligationsTypeAxis=wprt_OperatingLeaseExpensesMember', window );">Operating lease obligations (note 11)</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_OtherCommitmentsLineItems', window );"><strong>Other Commitments [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_ContractualObligation', window );">Carrying amount</a></td>
<td class="nump">1,965<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_wprt_ContractualObligationsRepaymentsTotal', window );">Contractual cash&#160;flows</a></td>
<td class="nump">2,870<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractualObligationDueInNextTwelveMonths', window );">Contractual obligation, due less than 1 year</a></td>
<td class="nump">336<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_ContractualObligationDueInSecondAndThirdYear', window );">Contractual obligation, due 1-3 years</a></td>
<td class="nump">1,203<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractualObligationDueInFourthAndFifthYear', window );">Contractual obligation, due 4-5 years</a></td>
<td class="nump">1,038<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_ContractualObligationDueAfterFifthYear', window );">Contractual obligation, due after 5 years</a></td>
<td class="nump">$ 293<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_ContractualObligation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 contractual obligation, including, but not limited to, long-term debt, lease obligation, purchase obligation, and other commitments.</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> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-4<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractualObligation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_ContractualObligationDueAfterFifthYear">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 contractual obligation to be paid after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</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> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-4<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractualObligationDueAfterFifthYear</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_ContractualObligationDueInFourthAndFifthYear">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 contractual obligation to be paid in fourth and fifth fiscal years following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</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> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-4<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractualObligationDueInFourthAndFifthYear</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_ContractualObligationDueInNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 contractual obligation to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</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> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-4<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractualObligationDueInNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_ContractualObligationDueInSecondAndThirdYear">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 contractual obligation to be paid in second and third fiscal years following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</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> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480738/235-10-S50-4<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractualObligationDueInSecondAndThirdYear</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_OtherCommitmentsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_OtherCommitmentsLineItems</td>
</tr>
<tr>
<td style="padding-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_wprt_ContractualObligationsRepaymentsTotal">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Represents the amount of contractual cashflows obligation repayments.</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;">wprt_ContractualObligationsRepaymentsTotal</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>wprt_</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_wprt_ContractualObligationsTypeAxis=us-gaap_AccountsPayableAndAccruedLiabilitiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">wprt_ContractualObligationsTypeAxis=us-gaap_AccountsPayableAndAccruedLiabilitiesMember</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_wprt_ContractualObligationsTypeAxis=us-gaap_SecuredDebtMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">wprt_ContractualObligationsTypeAxis=us-gaap_SecuredDebtMember</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_wprt_ContractualObligationsTypeAxis=wprt_OperatingLeaseExpensesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">wprt_ContractualObligationsTypeAxis=wprt_OperatingLeaseExpensesMember</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>81
<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>82
<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>85
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.25.2</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>228</ContextCount>
  <ElementCount>280</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>false</FootnotesReported>
  <SegmentCount>57</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>8</UnitCount>
  <MyReports>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>0000001 - Document - Cover Page</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/CoverPage</Role>
      <ShortName>Cover Page</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>9952151 - Statement - Condensed Consolidated Interim Balance Sheets (unaudited)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited</Role>
      <ShortName>Condensed Consolidated Interim Balance Sheets (unaudited)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>2</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>9952152 - Statement - Condensed Consolidated Interim Balance Sheets (unaudited) (Parenthetical)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunauditedParenthetical</Role>
      <ShortName>Condensed Consolidated Interim Balance Sheets (unaudited) (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>3</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R4.htm</HtmlFileName>
      <LongName>9952153 - Statement - Condensed Consolidated Interim Statements of Operations and Comprehensive Income (Loss) (unaudited)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited</Role>
      <ShortName>Condensed Consolidated Interim Statements of Operations and Comprehensive Income (Loss) (unaudited)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>4</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R5.htm</HtmlFileName>
      <LongName>9952154 - Statement - Condensed Consolidated Interim Statements of Shareholders' Equity (unaudited)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/CondensedConsolidatedInterimStatementsofShareholdersEquityunaudited</Role>
      <ShortName>Condensed Consolidated Interim Statements of Shareholders' Equity (unaudited)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>5</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R6.htm</HtmlFileName>
      <LongName>9952155 - Statement - Condensed Consolidated Interim Statements of Cash Flows (unaudited)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited</Role>
      <ShortName>Condensed Consolidated Interim Statements of Cash Flows (unaudited)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>6</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R7.htm</HtmlFileName>
      <LongName>9952156 - Disclosure - Company organization and operations</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/Companyorganizationandoperations</Role>
      <ShortName>Company organization and operations</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>7</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R8.htm</HtmlFileName>
      <LongName>9952157 - Disclosure - Liquidity and Going Concern</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/LiquidityandGoingConcern</Role>
      <ShortName>Liquidity and Going Concern</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>8</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R9.htm</HtmlFileName>
      <LongName>9952158 - Disclosure - Basis of preparation</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/Basisofpreparation</Role>
      <ShortName>Basis of preparation</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>9</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R10.htm</HtmlFileName>
      <LongName>9952159 - Disclosure - New accounting pronouncements</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/Newaccountingpronouncements</Role>
      <ShortName>New accounting pronouncements</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>10</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R11.htm</HtmlFileName>
      <LongName>9952160 - Disclosure - Held-for-sale disposal group and discontinued operations</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/Heldforsaledisposalgroupanddiscontinuedoperations</Role>
      <ShortName>Held-for-sale disposal group and discontinued operations</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>11</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R12.htm</HtmlFileName>
      <LongName>9952161 - Disclosure - Accounts receivable</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/Accountsreceivable</Role>
      <ShortName>Accounts receivable</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>12</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R13.htm</HtmlFileName>
      <LongName>9952162 - Disclosure - Inventories</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/Inventories</Role>
      <ShortName>Inventories</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>13</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R14.htm</HtmlFileName>
      <LongName>9952163 - Disclosure - Long-term investments</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/Longterminvestments</Role>
      <ShortName>Long-term investments</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>14</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R15.htm</HtmlFileName>
      <LongName>9952164 - Disclosure - Property, plant and equipment</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/Propertyplantandequipment</Role>
      <ShortName>Property, plant and equipment</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>15</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R16.htm</HtmlFileName>
      <LongName>9952165 - Disclosure - Accounts payable and accrued liabilities</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/Accountspayableandaccruedliabilities</Role>
      <ShortName>Accounts payable and accrued liabilities</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>16</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R17.htm</HtmlFileName>
      <LongName>9952166 - Disclosure - Operating leases right-of-use assets and lease liabilities</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/Operatingleasesrightofuseassetsandleaseliabilities</Role>
      <ShortName>Operating leases right-of-use assets and lease liabilities</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>17</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R18.htm</HtmlFileName>
      <LongName>9952167 - Disclosure - Long-term debt</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/Longtermdebt</Role>
      <ShortName>Long-term debt</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>18</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R19.htm</HtmlFileName>
      <LongName>9952168 - Disclosure - Share capital, stock options and other stock-based plans</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/Sharecapitalstockoptionsandotherstockbasedplans</Role>
      <ShortName>Share capital, stock options and other stock-based plans</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>19</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R20.htm</HtmlFileName>
      <LongName>9952169 - Disclosure - Related party transactions</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/Relatedpartytransactions</Role>
      <ShortName>Related party transactions</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>20</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R21.htm</HtmlFileName>
      <LongName>9952170 - Disclosure - Commitments and contingencies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/Commitmentsandcontingencies</Role>
      <ShortName>Commitments and contingencies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>21</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R22.htm</HtmlFileName>
      <LongName>9952171 - Disclosure - Segment information</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/Segmentinformation</Role>
      <ShortName>Segment information</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>22</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R23.htm</HtmlFileName>
      <LongName>9952172 - Disclosure - Financial instruments</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/Financialinstruments</Role>
      <ShortName>Financial instruments</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>23</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R24.htm</HtmlFileName>
      <LongName>9955511 - Disclosure - Basis of preparation (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/BasisofpreparationPolicies</Role>
      <ShortName>Basis of preparation (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <Position>24</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R25.htm</HtmlFileName>
      <LongName>9955512 - Disclosure - Basis of preparation (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/BasisofpreparationTables</Role>
      <ShortName>Basis of preparation (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.westport.com/role/Basisofpreparation</ParentRole>
      <Position>25</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R26.htm</HtmlFileName>
      <LongName>9955513 - Disclosure - Held-for-sale disposal group and discontinued operations (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsTables</Role>
      <ShortName>Held-for-sale disposal group and discontinued operations (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.westport.com/role/Heldforsaledisposalgroupanddiscontinuedoperations</ParentRole>
      <Position>26</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R27.htm</HtmlFileName>
      <LongName>9955514 - Disclosure - Accounts receivable (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/AccountsreceivableTables</Role>
      <ShortName>Accounts receivable (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.westport.com/role/Accountsreceivable</ParentRole>
      <Position>27</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R28.htm</HtmlFileName>
      <LongName>9955515 - Disclosure - Inventories (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/InventoriesTables</Role>
      <ShortName>Inventories (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.westport.com/role/Inventories</ParentRole>
      <Position>28</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R29.htm</HtmlFileName>
      <LongName>9955516 - Disclosure - Long-term investments (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/LongterminvestmentsTables</Role>
      <ShortName>Long-term investments (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.westport.com/role/Longterminvestments</ParentRole>
      <Position>29</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R30.htm</HtmlFileName>
      <LongName>9955517 - Disclosure - Property, plant and equipment (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/PropertyplantandequipmentTables</Role>
      <ShortName>Property, plant and equipment (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.westport.com/role/Propertyplantandequipment</ParentRole>
      <Position>30</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R31.htm</HtmlFileName>
      <LongName>9955518 - Disclosure - Accounts payable and accrued liabilities (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/AccountspayableandaccruedliabilitiesTables</Role>
      <ShortName>Accounts payable and accrued liabilities (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.westport.com/role/Accountspayableandaccruedliabilities</ParentRole>
      <Position>31</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R32.htm</HtmlFileName>
      <LongName>9955519 - Disclosure - Operating leases right-of-use assets and lease liabilities (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesTables</Role>
      <ShortName>Operating leases right-of-use assets and lease liabilities (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.westport.com/role/Operatingleasesrightofuseassetsandleaseliabilities</ParentRole>
      <Position>32</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R33.htm</HtmlFileName>
      <LongName>9955520 - Disclosure - Long-term debt (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/LongtermdebtTables</Role>
      <ShortName>Long-term debt (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.westport.com/role/Longtermdebt</ParentRole>
      <Position>33</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R34.htm</HtmlFileName>
      <LongName>9955521 - Disclosure - Share capital, stock options and other stock-based plans (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansTables</Role>
      <ShortName>Share capital, stock options and other stock-based plans (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.westport.com/role/Sharecapitalstockoptionsandotherstockbasedplans</ParentRole>
      <Position>34</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R35.htm</HtmlFileName>
      <LongName>9955522 - Disclosure - Related party transactions (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/RelatedpartytransactionsTables</Role>
      <ShortName>Related party transactions (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.westport.com/role/Relatedpartytransactions</ParentRole>
      <Position>35</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R36.htm</HtmlFileName>
      <LongName>9955523 - Disclosure - Segment information (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/SegmentinformationTables</Role>
      <ShortName>Segment information (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.westport.com/role/Segmentinformation</ParentRole>
      <Position>36</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R37.htm</HtmlFileName>
      <LongName>9955524 - Disclosure - Financial instruments (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/FinancialinstrumentsTables</Role>
      <ShortName>Financial instruments (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.westport.com/role/Financialinstruments</ParentRole>
      <Position>37</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R38.htm</HtmlFileName>
      <LongName>9955525 - Disclosure - Company organization and operations (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/CompanyorganizationandoperationsDetails</Role>
      <ShortName>Company organization and operations (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.westport.com/role/Companyorganizationandoperations</ParentRole>
      <Position>38</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R39.htm</HtmlFileName>
      <LongName>9955526 - Disclosure - Liquidity and Going Concern (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/LiquidityandGoingConcernDetails</Role>
      <ShortName>Liquidity and Going Concern (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.westport.com/role/LiquidityandGoingConcern</ParentRole>
      <Position>39</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R40.htm</HtmlFileName>
      <LongName>9955527 - Disclosure - Basis of preparation (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/BasisofpreparationDetails</Role>
      <ShortName>Basis of preparation (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.westport.com/role/BasisofpreparationTables</ParentRole>
      <Position>40</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R41.htm</HtmlFileName>
      <LongName>9955528 - Disclosure - Held-for-sale disposal group and discontinued operations - Narrative (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsNarrativeDetails</Role>
      <ShortName>Held-for-sale disposal group and discontinued operations - Narrative (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsTables</ParentRole>
      <Position>41</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R42.htm</HtmlFileName>
      <LongName>9955529 - Disclosure - Held-for-sale disposal group and discontinued operations - Assets and Liabilities of the Discontinued Operations (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails</Role>
      <ShortName>Held-for-sale disposal group and discontinued operations - Assets and Liabilities of the Discontinued Operations (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>42</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R43.htm</HtmlFileName>
      <LongName>9955530 - Disclosure - Held-for-sale disposal group and discontinued operations - Revenue and Expenses of the Discontinued Operations (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails</Role>
      <ShortName>Held-for-sale disposal group and discontinued operations - Revenue and Expenses of the Discontinued Operations (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>43</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R44.htm</HtmlFileName>
      <LongName>9955531 - Disclosure - Accounts receivable - Schedule of Accounts Receivable (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/AccountsreceivableScheduleofAccountsReceivableDetails</Role>
      <ShortName>Accounts receivable - Schedule of Accounts Receivable (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>44</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R45.htm</HtmlFileName>
      <LongName>9955532 - Disclosure - Accounts receivable - Narrative (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/AccountsreceivableNarrativeDetails</Role>
      <ShortName>Accounts receivable - Narrative (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>45</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R46.htm</HtmlFileName>
      <LongName>9955533 - Disclosure - Inventories - Schedule of Inventories (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/InventoriesScheduleofInventoriesDetails</Role>
      <ShortName>Inventories - Schedule of Inventories (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>46</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R47.htm</HtmlFileName>
      <LongName>9955534 - Disclosure - Inventories - Narrative (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/InventoriesNarrativeDetails</Role>
      <ShortName>Inventories - Narrative (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>47</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R48.htm</HtmlFileName>
      <LongName>9955535 - Disclosure - Long-term investments - Schedule of Investments (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/LongterminvestmentsScheduleofInvestmentsDetails</Role>
      <ShortName>Long-term investments - Schedule of Investments (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>48</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R49.htm</HtmlFileName>
      <LongName>9955536 - Disclosure - Long-term investments - Narrative (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/LongterminvestmentsNarrativeDetails</Role>
      <ShortName>Long-term investments - Narrative (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>49</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R50.htm</HtmlFileName>
      <LongName>9955537 - Disclosure - Long-term investments - Balance Sheet (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails</Role>
      <ShortName>Long-term investments - Balance Sheet (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>50</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R51.htm</HtmlFileName>
      <LongName>9955538 - Disclosure - Long-term investments - Income Statement (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/LongterminvestmentsIncomeStatementDetails</Role>
      <ShortName>Long-term investments - Income Statement (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>51</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R52.htm</HtmlFileName>
      <LongName>9955539 - Disclosure - Property, plant and equipment (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/PropertyplantandequipmentDetails</Role>
      <ShortName>Property, plant and equipment (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.westport.com/role/PropertyplantandequipmentTables</ParentRole>
      <Position>52</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R53.htm</HtmlFileName>
      <LongName>9955540 - Disclosure - Accounts payable and accrued liabilities (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/AccountspayableandaccruedliabilitiesDetails</Role>
      <ShortName>Accounts payable and accrued liabilities (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.westport.com/role/AccountspayableandaccruedliabilitiesTables</ParentRole>
      <Position>53</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R54.htm</HtmlFileName>
      <LongName>9955541 - Disclosure - Operating leases right-of-use assets and lease liabilities - Narrative (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesNarrativeDetails</Role>
      <ShortName>Operating leases right-of-use assets and lease liabilities - Narrative (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesTables</ParentRole>
      <Position>54</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R55.htm</HtmlFileName>
      <LongName>9955542 - Disclosure - Operating leases right-of-use assets and lease liabilities - Components of Lease Cost (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesComponentsofLeaseCostDetails</Role>
      <ShortName>Operating leases right-of-use assets and lease liabilities - Components of Lease Cost (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>55</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R56.htm</HtmlFileName>
      <LongName>9955543 - Disclosure - Operating leases right-of-use assets and lease liabilities - Maturities of Lease Liabilities (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesMaturitiesofLeaseLiabilitiesDetails</Role>
      <ShortName>Operating leases right-of-use assets and lease liabilities - Maturities of Lease Liabilities (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>56</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R57.htm</HtmlFileName>
      <LongName>9955544 - Disclosure - Long-term debt - Term Loan Facilities (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/LongtermdebtTermLoanFacilitiesDetails</Role>
      <ShortName>Long-term debt - Term Loan Facilities (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>57</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R58.htm</HtmlFileName>
      <LongName>9955545 - Disclosure - Long-term debt - Narrative (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/LongtermdebtNarrativeDetails</Role>
      <ShortName>Long-term debt - Narrative (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>58</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R59.htm</HtmlFileName>
      <LongName>9955546 - Disclosure - Long-term debt - Schedule of Maturities on Senior Financing (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/LongtermdebtScheduleofMaturitiesonSeniorFinancingDetails</Role>
      <ShortName>Long-term debt - Schedule of Maturities on Senior Financing (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>59</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R60.htm</HtmlFileName>
      <LongName>9955547 - Disclosure - Share capital, stock options and other stock-based plans - Narrative (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansNarrativeDetails</Role>
      <ShortName>Share capital, stock options and other stock-based plans - Narrative (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansTables</ParentRole>
      <Position>60</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R61.htm</HtmlFileName>
      <LongName>9955548 - Disclosure - Share capital, stock options and other stock-based plans - Share units (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansShareunitsDetails</Role>
      <ShortName>Share capital, stock options and other stock-based plans - Share units (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansTables</ParentRole>
      <Position>61</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R62.htm</HtmlFileName>
      <LongName>9955549 - Disclosure - Share capital, stock options and other stock-based plans - Aggregate intrinsic values (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansAggregateintrinsicvaluesDetails</Role>
      <ShortName>Share capital, stock options and other stock-based plans - Aggregate intrinsic values (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>62</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R63.htm</HtmlFileName>
      <LongName>9955550 - Disclosure - Share capital, stock options and other stock-based plans - Stock-based compensation (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansStockbasedcompensationDetails</Role>
      <ShortName>Share capital, stock options and other stock-based plans - Stock-based compensation (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>63</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R64.htm</HtmlFileName>
      <LongName>9955551 - Disclosure - Related party transactions (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/RelatedpartytransactionsDetails</Role>
      <ShortName>Related party transactions (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.westport.com/role/RelatedpartytransactionsTables</ParentRole>
      <Position>64</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R65.htm</HtmlFileName>
      <LongName>9955552 - Disclosure - Segment information - Narrative (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/SegmentinformationNarrativeDetails</Role>
      <ShortName>Segment information - Narrative (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>65</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R66.htm</HtmlFileName>
      <LongName>9955553 - Disclosure - Segment information - Financial information by business segment (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/SegmentinformationFinancialinformationbybusinesssegmentDetails</Role>
      <ShortName>Segment information - Financial information by business segment (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>66</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R67.htm</HtmlFileName>
      <LongName>9955554 - Disclosure - Segment Information - Reconciliation of Segment EBITDA to Loss before income taxes (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/SegmentInformationReconciliationofSegmentEBITDAtoLossbeforeincometaxesDetails</Role>
      <ShortName>Segment Information - Reconciliation of Segment EBITDA to Loss before income taxes (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>67</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R68.htm</HtmlFileName>
      <LongName>9955555 - Disclosure - Segment information - Assets (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/SegmentinformationAssetsDetails</Role>
      <ShortName>Segment information - Assets (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>68</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R69.htm</HtmlFileName>
      <LongName>9955556 - Disclosure - Segment information - Percent of revenue by geographical location (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/SegmentinformationPercentofrevenuebygeographicallocationDetails</Role>
      <ShortName>Segment information - Percent of revenue by geographical location (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>69</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R70.htm</HtmlFileName>
      <LongName>9955557 - Disclosure - Segment Information - Total asset allocation (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/SegmentInformationTotalassetallocationDetails</Role>
      <ShortName>Segment Information - Total asset allocation (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>70</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R71.htm</HtmlFileName>
      <LongName>9955558 - Disclosure - Financial instruments - Narrative (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/FinancialinstrumentsNarrativeDetails</Role>
      <ShortName>Financial instruments - Narrative (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>71</Position>
    </Report>
    <Report instance="wprt-20250630_d2.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R72.htm</HtmlFileName>
      <LongName>9955559 - Disclosure - Financial instruments - Financial Obligations (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.westport.com/role/FinancialinstrumentsFinancialObligationsDetails</Role>
      <ShortName>Financial instruments - Financial Obligations (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>72</Position>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <LongName>All Reports</LongName>
      <ReportType>Book</ReportType>
      <ShortName>All Reports</ShortName>
    </Report>
  </MyReports>
  <InputFiles>
    <File doctype="6-K/A" isDefinitelyFs="true" isUsgaap="true" original="wprt-20250630_d2.htm">wprt-20250630_d2.htm</File>
    <File doctype="6-K/A" isDefinitelyFs="true" isUsgaap="true" original="wprt-20250630.htm">wprt-20250630.htm</File>
    <File>wprt-20250630.xsd</File>
    <File>wprt-20250630_cal.xml</File>
    <File>wprt-20250630_def.xml</File>
    <File>wprt-20250630_lab.xml</File>
    <File>wprt-20250630_pre.xml</File>
  </InputFiles>
  <SupplementalFiles/>
  <BaseTaxonomies>
    <BaseTaxonomy items="1">http://fasb.org/srt/2025</BaseTaxonomy>
    <BaseTaxonomy items="1218">http://fasb.org/us-gaap/2025</BaseTaxonomy>
    <BaseTaxonomy items="9">http://xbrl.sec.gov/dei/2025</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>true</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>JSON
<SEQUENCE>87
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "version": "2.2",
 "instance": {
  "wprt-20250630_d2.htm wprt-20250630.htm": {
   "nsprefix": "wprt",
   "nsuri": "http://www.westport.com/20250630",
   "dts": {
    "inline": {
     "local": [
      "wprt-20250630.htm",
      "wprt-20250630_d2.htm"
     ]
    },
    "schema": {
     "local": [
      "wprt-20250630.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://www.xbrl.org/dtr/type/2024-01-31/types.xsd",
      "https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd",
      "https://xbrl.fasb.org/srt/2025/elts/srt-roles-2025.xsd",
      "https://xbrl.fasb.org/srt/2025/elts/srt-types-2025.xsd",
      "https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd",
      "https://xbrl.fasb.org/us-gaap/2025/elts/us-roles-2025.xsd",
      "https://xbrl.fasb.org/us-gaap/2025/elts/us-types-2025.xsd",
      "https://xbrl.sec.gov/country/2025/country-2025.xsd",
      "https://xbrl.sec.gov/currency/2025/currency-2025.xsd",
      "https://xbrl.sec.gov/dei/2025/dei-2025.xsd",
      "https://xbrl.sec.gov/stpr/2025/stpr-2025.xsd"
     ]
    },
    "calculationLink": {
     "local": [
      "wprt-20250630_cal.xml"
     ]
    },
    "definitionLink": {
     "local": [
      "wprt-20250630_def.xml"
     ]
    },
    "labelLink": {
     "local": [
      "wprt-20250630_lab.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "wprt-20250630_pre.xml"
     ]
    }
   },
   "keyStandard": 234,
   "keyCustom": 46,
   "axisStandard": 21,
   "axisCustom": 1,
   "memberStandard": 35,
   "memberCustom": 18,
   "hidden": {
    "total": 6,
    "http://xbrl.sec.gov/dei/2025": 6
   },
   "contextCount": 228,
   "entityCount": 1,
   "segmentCount": 57,
   "elementCount": 447,
   "unitCount": 8,
   "baseTaxonomies": {
    "http://fasb.org/us-gaap/2025": 1218,
    "http://xbrl.sec.gov/dei/2025": 9,
    "http://fasb.org/srt/2025": 1
   },
   "report": {
    "R1": {
     "role": "http://www.westport.com/role/CoverPage",
     "longName": "0000001 - Document - Cover Page",
     "shortName": "Cover Page",
     "isDefault": "true",
     "groupType": "document",
     "subGroupType": "",
     "menuCat": "Cover",
     "order": "1",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "dei:DocumentType",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630_d2.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "dei:DocumentType",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630_d2.htm",
      "first": true,
      "unique": true
     }
    },
    "R2": {
     "role": "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited",
     "longName": "9952151 - Statement - Condensed Consolidated Interim Balance Sheets (unaudited)",
     "shortName": "Condensed Consolidated Interim Balance Sheets (unaudited)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "2",
     "firstAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "div",
       "us-gaap:SubstantialDoubtAboutGoingConcernTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap:PrepaidExpenseCurrent",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "unique": true
     }
    },
    "R3": {
     "role": "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunauditedParenthetical",
     "longName": "9952152 - Statement - Condensed Consolidated Interim Balance Sheets (unaudited) (Parenthetical)",
     "shortName": "Condensed Consolidated Interim Balance Sheets (unaudited) (Parenthetical)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "parenthetical",
     "menuCat": "Statements",
     "order": "3",
     "firstAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap:CommonStockSharesIssued",
      "unitRef": "shares",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "INF",
      "ancestors": [
       "us-gaap:CommonStockSharesOutstanding",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap:CommonStockSharesIssued",
      "unitRef": "shares",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "INF",
      "ancestors": [
       "us-gaap:CommonStockSharesOutstanding",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R4": {
     "role": "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited",
     "longName": "9952153 - Statement - Condensed Consolidated Interim Statements of Operations and Comprehensive Income (Loss) (unaudited)",
     "shortName": "Condensed Consolidated Interim Statements of Operations and Comprehensive Income (Loss) (unaudited)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "4",
     "firstAnchor": {
      "contextRef": "c-4",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c-4",
      "name": "us-gaap:CumulativeTranslationAdjustmentNetOfTaxPeriodIncreaseDecrease",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "unique": true
     }
    },
    "R5": {
     "role": "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofShareholdersEquityunaudited",
     "longName": "9952154 - Statement - Condensed Consolidated Interim Statements of Shareholders' Equity (unaudited)",
     "shortName": "Condensed Consolidated Interim Statements of Shareholders' Equity (unaudited)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "5",
     "firstAnchor": {
      "contextRef": "c-23",
      "name": "us-gaap:CommonStockSharesOutstanding",
      "unitRef": "shares",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "INF",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-23",
      "name": "us-gaap:CommonStockSharesOutstanding",
      "unitRef": "shares",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "INF",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R6": {
     "role": "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited",
     "longName": "9952155 - Statement - Condensed Consolidated Interim Statements of Cash Flows (unaudited)",
     "shortName": "Condensed Consolidated Interim Statements of Cash Flows (unaudited)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "6",
     "firstAnchor": {
      "contextRef": "c-4",
      "name": "us-gaap:IncomeLossFromContinuingOperations",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c-4",
      "name": "us-gaap:ShareBasedCompensation",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "unique": true
     }
    },
    "R7": {
     "role": "http://www.westport.com/role/Companyorganizationandoperations",
     "longName": "9952156 - Disclosure - Company organization and operations",
     "shortName": "Company organization and operations",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "7",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:NatureOfOperations",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:NatureOfOperations",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R8": {
     "role": "http://www.westport.com/role/LiquidityandGoingConcern",
     "longName": "9952157 - Disclosure - Liquidity and Going Concern",
     "shortName": "Liquidity and Going Concern",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "8",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:SubstantialDoubtAboutGoingConcernTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:SubstantialDoubtAboutGoingConcernTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R9": {
     "role": "http://www.westport.com/role/Basisofpreparation",
     "longName": "9952158 - Disclosure - Basis of preparation",
     "shortName": "Basis of preparation",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "9",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:BasisOfAccounting",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:BasisOfAccounting",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R10": {
     "role": "http://www.westport.com/role/Newaccountingpronouncements",
     "longName": "9952159 - Disclosure - New accounting pronouncements",
     "shortName": "New accounting pronouncements",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "10",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R11": {
     "role": "http://www.westport.com/role/Heldforsaledisposalgroupanddiscontinuedoperations",
     "longName": "9952160 - Disclosure - Held-for-sale disposal group and discontinued operations",
     "shortName": "Held-for-sale disposal group and discontinued operations",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "11",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R12": {
     "role": "http://www.westport.com/role/Accountsreceivable",
     "longName": "9952161 - Disclosure - Accounts receivable",
     "shortName": "Accounts receivable",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "12",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R13": {
     "role": "http://www.westport.com/role/Inventories",
     "longName": "9952162 - Disclosure - Inventories",
     "shortName": "Inventories",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "13",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:InventoryDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:InventoryDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R14": {
     "role": "http://www.westport.com/role/Longterminvestments",
     "longName": "9952163 - Disclosure - Long-term investments",
     "shortName": "Long-term investments",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "14",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:EquityMethodInvestmentsDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:EquityMethodInvestmentsDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R15": {
     "role": "http://www.westport.com/role/Propertyplantandequipment",
     "longName": "9952164 - Disclosure - Property, plant and equipment",
     "shortName": "Property, plant and equipment",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "15",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R16": {
     "role": "http://www.westport.com/role/Accountspayableandaccruedliabilities",
     "longName": "9952165 - Disclosure - Accounts payable and accrued liabilities",
     "shortName": "Accounts payable and accrued liabilities",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "16",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R17": {
     "role": "http://www.westport.com/role/Operatingleasesrightofuseassetsandleaseliabilities",
     "longName": "9952166 - Disclosure - Operating leases right-of-use assets and lease liabilities",
     "shortName": "Operating leases right-of-use assets and lease liabilities",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "17",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:LesseeOperatingLeasesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:LesseeOperatingLeasesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R18": {
     "role": "http://www.westport.com/role/Longtermdebt",
     "longName": "9952167 - Disclosure - Long-term debt",
     "shortName": "Long-term debt",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "18",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:LongTermDebtTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:LongTermDebtTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R19": {
     "role": "http://www.westport.com/role/Sharecapitalstockoptionsandotherstockbasedplans",
     "longName": "9952168 - Disclosure - Share capital, stock options and other stock-based plans",
     "shortName": "Share capital, stock options and other stock-based plans",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "19",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R20": {
     "role": "http://www.westport.com/role/Relatedpartytransactions",
     "longName": "9952169 - Disclosure - Related party transactions",
     "shortName": "Related party transactions",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "20",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:RelatedPartyTransactionsDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:RelatedPartyTransactionsDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R21": {
     "role": "http://www.westport.com/role/Commitmentsandcontingencies",
     "longName": "9952170 - Disclosure - Commitments and contingencies",
     "shortName": "Commitments and contingencies",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "21",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R22": {
     "role": "http://www.westport.com/role/Segmentinformation",
     "longName": "9952171 - Disclosure - Segment information",
     "shortName": "Segment information",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "22",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R23": {
     "role": "http://www.westport.com/role/Financialinstruments",
     "longName": "9952172 - Disclosure - Financial instruments",
     "shortName": "Financial instruments",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "23",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:FinancialInstrumentsDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:FinancialInstrumentsDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R24": {
     "role": "http://www.westport.com/role/BasisofpreparationPolicies",
     "longName": "9955511 - Disclosure - Basis of preparation (Policies)",
     "shortName": "Basis of preparation (Policies)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "policies",
     "menuCat": "Policies",
     "order": "24",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "us-gaap:BasisOfAccounting",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "us-gaap:BasisOfAccounting",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R25": {
     "role": "http://www.westport.com/role/BasisofpreparationTables",
     "longName": "9955512 - Disclosure - Basis of preparation (Tables)",
     "shortName": "Basis of preparation (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "25",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "wprt:ScheduleOfForeignCurrencyExchangeRateTranslationTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "wprt:ScheduleOfForeignCurrencyExchangeRateTranslationTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R26": {
     "role": "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsTables",
     "longName": "9955513 - Disclosure - Held-for-sale disposal group and discontinued operations (Tables)",
     "shortName": "Held-for-sale disposal group and discontinued operations (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "26",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R27": {
     "role": "http://www.westport.com/role/AccountsreceivableTables",
     "longName": "9955514 - Disclosure - Accounts receivable (Tables)",
     "shortName": "Accounts receivable (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "27",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R28": {
     "role": "http://www.westport.com/role/InventoriesTables",
     "longName": "9955515 - Disclosure - Inventories (Tables)",
     "shortName": "Inventories (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "28",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:InventoryDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:InventoryDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R29": {
     "role": "http://www.westport.com/role/LongterminvestmentsTables",
     "longName": "9955516 - Disclosure - Long-term investments (Tables)",
     "shortName": "Long-term investments (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "29",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:EquityMethodInvestmentsTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:EquityMethodInvestmentsDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:EquityMethodInvestmentsTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:EquityMethodInvestmentsDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R30": {
     "role": "http://www.westport.com/role/PropertyplantandequipmentTables",
     "longName": "9955517 - Disclosure - Property, plant and equipment (Tables)",
     "shortName": "Property, plant and equipment (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "30",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:PropertyPlantAndEquipmentTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:PropertyPlantAndEquipmentTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R31": {
     "role": "http://www.westport.com/role/AccountspayableandaccruedliabilitiesTables",
     "longName": "9955518 - Disclosure - Accounts payable and accrued liabilities (Tables)",
     "shortName": "Accounts payable and accrued liabilities (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "31",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R32": {
     "role": "http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesTables",
     "longName": "9955519 - Disclosure - Operating leases right-of-use assets and lease liabilities (Tables)",
     "shortName": "Operating leases right-of-use assets and lease liabilities (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "32",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:LeaseCostTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:LeaseCostTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R33": {
     "role": "http://www.westport.com/role/LongtermdebtTables",
     "longName": "9955520 - Disclosure - Long-term debt (Tables)",
     "shortName": "Long-term debt (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "33",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:ScheduleOfDebtInstrumentsTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:LongTermDebtTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:ScheduleOfDebtInstrumentsTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:LongTermDebtTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R34": {
     "role": "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansTables",
     "longName": "9955521 - Disclosure - Share capital, stock options and other stock-based plans (Tables)",
     "shortName": "Share capital, stock options and other stock-based plans (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "34",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R35": {
     "role": "http://www.westport.com/role/RelatedpartytransactionsTables",
     "longName": "9955522 - Disclosure - Related party transactions (Tables)",
     "shortName": "Related party transactions (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "35",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:ScheduleOfRelatedPartyTransactionsTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:RelatedPartyTransactionsDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:ScheduleOfRelatedPartyTransactionsTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:RelatedPartyTransactionsDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R36": {
     "role": "http://www.westport.com/role/SegmentinformationTables",
     "longName": "9955523 - Disclosure - Segment information (Tables)",
     "shortName": "Segment information (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "36",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R37": {
     "role": "http://www.westport.com/role/FinancialinstrumentsTables",
     "longName": "9955524 - Disclosure - Financial instruments (Tables)",
     "shortName": "Financial instruments (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "37",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "srt:ContractualObligationFiscalYearMaturityScheduleTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "srt:ContractualObligationFiscalYearMaturityScheduleTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R38": {
     "role": "http://www.westport.com/role/CompanyorganizationandoperationsDetails",
     "longName": "9955525 - Disclosure - Company organization and operations (Details)",
     "shortName": "Company organization and operations (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "38",
     "firstAnchor": {
      "contextRef": "c-57",
      "name": "us-gaap:EquityMethodInvestmentOwnershipPercentage",
      "unitRef": "number",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "2",
      "ancestors": [
       "span",
       "div",
       "us-gaap:NatureOfOperations",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-57",
      "name": "us-gaap:EquityMethodInvestmentOwnershipPercentage",
      "unitRef": "number",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "2",
      "ancestors": [
       "span",
       "div",
       "us-gaap:NatureOfOperations",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R39": {
     "role": "http://www.westport.com/role/LiquidityandGoingConcernDetails",
     "longName": "9955526 - Disclosure - Liquidity and Going Concern (Details)",
     "shortName": "Liquidity and Going Concern (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "39",
     "firstAnchor": {
      "contextRef": "c-4",
      "name": "us-gaap:OperatingIncomeLoss",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c-60",
      "name": "us-gaap:StockIssuedDuringPeriodSharesTreasuryStockReissued",
      "unitRef": "shares",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "div",
       "us-gaap:SubstantialDoubtAboutGoingConcernTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "unique": true
     }
    },
    "R40": {
     "role": "http://www.westport.com/role/BasisofpreparationDetails",
     "longName": "9955527 - Disclosure - Basis of preparation (Details)",
     "shortName": "Basis of preparation (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "40",
     "firstAnchor": {
      "contextRef": "c-62",
      "name": "us-gaap:ForeignCurrencyExchangeRateTranslation1",
      "unitRef": "number",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "2",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c-63",
      "name": "us-gaap:ForeignCurrencyExchangeRateTranslation1",
      "unitRef": "number",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "2",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "unique": true
     }
    },
    "R41": {
     "role": "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsNarrativeDetails",
     "longName": "9955528 - Disclosure - Held-for-sale disposal group and discontinued operations - Narrative (Details)",
     "shortName": "Held-for-sale disposal group and discontinued operations - Narrative (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "41",
     "firstAnchor": {
      "contextRef": "c-108",
      "name": "us-gaap:DebtInstrumentFaceAmount",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "div",
       "us-gaap:DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-108",
      "name": "us-gaap:DebtInstrumentFaceAmount",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "div",
       "us-gaap:DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R42": {
     "role": "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails",
     "longName": "9955529 - Disclosure - Held-for-sale disposal group and discontinued operations - Assets and Liabilities of the Discontinued Operations (Details)",
     "shortName": "Held-for-sale disposal group and discontinued operations - Assets and Liabilities of the Discontinued Operations (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "42",
     "firstAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c-111",
      "name": "us-gaap:DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "unique": true
     }
    },
    "R43": {
     "role": "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails",
     "longName": "9955530 - Disclosure - Held-for-sale disposal group and discontinued operations - Revenue and Expenses of the Discontinued Operations (Details)",
     "shortName": "Held-for-sale disposal group and discontinued operations - Revenue and Expenses of the Discontinued Operations (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "43",
     "firstAnchor": {
      "contextRef": "c-4",
      "name": "us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c-104",
      "name": "us-gaap:DisposalGroupIncludingDiscontinuedOperationRevenue",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "unique": true
     }
    },
    "R44": {
     "role": "http://www.westport.com/role/AccountsreceivableScheduleofAccountsReceivableDetails",
     "longName": "9955531 - Disclosure - Accounts receivable - Schedule of Accounts Receivable (Details)",
     "shortName": "Accounts receivable - Schedule of Accounts Receivable (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "44",
     "firstAnchor": {
      "contextRef": "c-2",
      "name": "wprt:TradeAccountsReceivable",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
       "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-2",
      "name": "wprt:TradeAccountsReceivable",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
       "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R45": {
     "role": "http://www.westport.com/role/AccountsreceivableNarrativeDetails",
     "longName": "9955532 - Disclosure - Accounts receivable - Narrative (Details)",
     "shortName": "Accounts receivable - Narrative (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "45",
     "firstAnchor": {
      "contextRef": "c-2",
      "name": "wprt:HoldbackReceivablesNetCurrent",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
       "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c-115",
      "name": "wprt:HoldbackTerm",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "unique": true
     }
    },
    "R46": {
     "role": "http://www.westport.com/role/InventoriesScheduleofInventoriesDetails",
     "longName": "9955533 - Disclosure - Inventories - Schedule of Inventories (Details)",
     "shortName": "Inventories - Schedule of Inventories (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "46",
     "firstAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap:OtherInventoryPurchasedGoods",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "us-gaap:InventoryDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap:OtherInventoryPurchasedGoods",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "us-gaap:InventoryDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R47": {
     "role": "http://www.westport.com/role/InventoriesNarrativeDetails",
     "longName": "9955534 - Disclosure - Inventories - Narrative (Details)",
     "shortName": "Inventories - Narrative (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "47",
     "firstAnchor": {
      "contextRef": "c-4",
      "name": "us-gaap:InventoryWriteDown",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true
     },
     "uniqueAnchor": null
    },
    "R48": {
     "role": "http://www.westport.com/role/LongterminvestmentsScheduleofInvestmentsDetails",
     "longName": "9955535 - Disclosure - Long-term investments - Schedule of Investments (Details)",
     "shortName": "Long-term investments - Schedule of Investments (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "48",
     "firstAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap:LongTermInvestments",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c-117",
      "name": "us-gaap:LongTermInvestments",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:EquityMethodInvestmentsTextBlock",
       "us-gaap:EquityMethodInvestmentsDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "unique": true
     }
    },
    "R49": {
     "role": "http://www.westport.com/role/LongterminvestmentsNarrativeDetails",
     "longName": "9955536 - Disclosure - Long-term investments - Narrative (Details)",
     "shortName": "Long-term investments - Narrative (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "49",
     "firstAnchor": {
      "contextRef": "c-4",
      "name": "us-gaap:IncomeLossFromEquityMethodInvestments",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true
     },
     "uniqueAnchor": null
    },
    "R50": {
     "role": "http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails",
     "longName": "9955537 - Disclosure - Long-term investments - Balance Sheet (Details)",
     "shortName": "Long-term investments - Balance Sheet (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "50",
     "firstAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "div",
       "us-gaap:SubstantialDoubtAboutGoingConcernTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c-123",
      "name": "us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "unique": true
     }
    },
    "R51": {
     "role": "http://www.westport.com/role/LongterminvestmentsIncomeStatementDetails",
     "longName": "9955538 - Disclosure - Long-term investments - Income Statement (Details)",
     "shortName": "Long-term investments - Income Statement (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "51",
     "firstAnchor": {
      "contextRef": "c-4",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c-125",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "unique": true
     }
    },
    "R52": {
     "role": "http://www.westport.com/role/PropertyplantandequipmentDetails",
     "longName": "9955539 - Disclosure - Property, plant and equipment (Details)",
     "shortName": "Property, plant and equipment (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "52",
     "firstAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap:PropertyPlantAndEquipmentGross",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:PropertyPlantAndEquipmentTextBlock",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap:PropertyPlantAndEquipmentGross",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:PropertyPlantAndEquipmentTextBlock",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R53": {
     "role": "http://www.westport.com/role/AccountspayableandaccruedliabilitiesDetails",
     "longName": "9955540 - Disclosure - Accounts payable and accrued liabilities (Details)",
     "shortName": "Accounts payable and accrued liabilities (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "53",
     "firstAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap:AccountsPayableTradeCurrent",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock",
       "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap:AccountsPayableTradeCurrent",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock",
       "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R54": {
     "role": "http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesNarrativeDetails",
     "longName": "9955541 - Disclosure - Operating leases right-of-use assets and lease liabilities - Narrative (Details)",
     "shortName": "Operating leases right-of-use assets and lease liabilities - Narrative (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "54",
     "firstAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R55": {
     "role": "http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesComponentsofLeaseCostDetails",
     "longName": "9955542 - Disclosure - Operating leases right-of-use assets and lease liabilities - Components of Lease Cost (Details)",
     "shortName": "Operating leases right-of-use assets and lease liabilities - Components of Lease Cost (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "55",
     "firstAnchor": {
      "contextRef": "c-4",
      "name": "us-gaap:FinanceLeaseRightOfUseAssetAmortization",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:LeaseCostTableTextBlock",
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-4",
      "name": "us-gaap:FinanceLeaseRightOfUseAssetAmortization",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:LeaseCostTableTextBlock",
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R56": {
     "role": "http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesMaturitiesofLeaseLiabilitiesDetails",
     "longName": "9955543 - Disclosure - Operating leases right-of-use assets and lease liabilities - Maturities of Lease Liabilities (Details)",
     "shortName": "Operating leases right-of-use assets and lease liabilities - Maturities of Lease Liabilities (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "56",
     "firstAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R57": {
     "role": "http://www.westport.com/role/LongtermdebtTermLoanFacilitiesDetails",
     "longName": "9955544 - Disclosure - Long-term debt - Term Loan Facilities (Details)",
     "shortName": "Long-term debt - Term Loan Facilities (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "57",
     "firstAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap:LongTermDebtAndCapitalLeaseObligationsCurrent",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c-59",
      "name": "us-gaap:DebtAndCapitalLeaseObligations",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfDebtInstrumentsTextBlock",
       "us-gaap:LongTermDebtTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "unique": true
     }
    },
    "R58": {
     "role": "http://www.westport.com/role/LongtermdebtNarrativeDetails",
     "longName": "9955545 - Disclosure - Long-term debt - Narrative (Details)",
     "shortName": "Long-term debt - Narrative (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "58",
     "firstAnchor": {
      "contextRef": "c-140",
      "name": "us-gaap:DebtInstrumentFaceAmount",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "INF",
      "ancestors": [
       "span",
       "div",
       "us-gaap:LongTermDebtTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-140",
      "name": "us-gaap:DebtInstrumentFaceAmount",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "INF",
      "ancestors": [
       "span",
       "div",
       "us-gaap:LongTermDebtTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R59": {
     "role": "http://www.westport.com/role/LongtermdebtScheduleofMaturitiesonSeniorFinancingDetails",
     "longName": "9955546 - Disclosure - Long-term debt - Schedule of Maturities on Senior Financing (Details)",
     "shortName": "Long-term debt - Schedule of Maturities on Senior Financing (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "59",
     "firstAnchor": {
      "contextRef": "c-59",
      "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-59",
      "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R60": {
     "role": "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansNarrativeDetails",
     "longName": "9955547 - Disclosure - Share capital, stock options and other stock-based plans - Narrative (Details)",
     "shortName": "Share capital, stock options and other stock-based plans - Narrative (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "60",
     "firstAnchor": {
      "contextRef": "c-4",
      "name": "us-gaap:AllocatedShareBasedCompensationExpense",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c-4",
      "name": "wprt:ShareBasedPaymentArrangementExpenseSettledInShares",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "unique": true
     }
    },
    "R61": {
     "role": "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansShareunitsDetails",
     "longName": "9955548 - Disclosure - Share capital, stock options and other stock-based plans - Share units (Details)",
     "shortName": "Share capital, stock options and other stock-based plans - Share units (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "61",
     "firstAnchor": {
      "contextRef": "c-141",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber",
      "unitRef": "shares",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "INF",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-141",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber",
      "unitRef": "shares",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "INF",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R62": {
     "role": "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansAggregateintrinsicvaluesDetails",
     "longName": "9955549 - Disclosure - Share capital, stock options and other stock-based plans - Aggregate intrinsic values (Details)",
     "shortName": "Share capital, stock options and other stock-based plans - Aggregate intrinsic values (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "62",
     "firstAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "wprt:ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardIntrinsicValueTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "wprt:ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardIntrinsicValueTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R63": {
     "role": "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansStockbasedcompensationDetails",
     "longName": "9955550 - Disclosure - Share capital, stock options and other stock-based plans - Stock-based compensation (Details)",
     "shortName": "Share capital, stock options and other stock-based plans - Stock-based compensation (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "63",
     "firstAnchor": {
      "contextRef": "c-4",
      "name": "us-gaap:AllocatedShareBasedCompensationExpense",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c-153",
      "name": "us-gaap:AllocatedShareBasedCompensationExpense",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "unique": true
     }
    },
    "R64": {
     "role": "http://www.westport.com/role/RelatedpartytransactionsDetails",
     "longName": "9955551 - Disclosure - Related party transactions (Details)",
     "shortName": "Related party transactions (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "64",
     "firstAnchor": {
      "contextRef": "c-177",
      "name": "us-gaap:OtherReceivablesNetCurrent",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfRelatedPartyTransactionsTableTextBlock",
       "us-gaap:RelatedPartyTransactionsDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c-178",
      "name": "us-gaap:OtherReceivablesNetCurrent",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfRelatedPartyTransactionsTableTextBlock",
       "us-gaap:RelatedPartyTransactionsDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "unique": true
     }
    },
    "R65": {
     "role": "http://www.westport.com/role/SegmentinformationNarrativeDetails",
     "longName": "9955552 - Disclosure - Segment information - Narrative (Details)",
     "shortName": "Segment information - Narrative (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "65",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:NumberOfReportableSegments",
      "unitRef": "segment",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "INF",
      "ancestors": [
       "span",
       "div",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:NumberOfReportableSegments",
      "unitRef": "segment",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "INF",
      "ancestors": [
       "span",
       "div",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R66": {
     "role": "http://www.westport.com/role/SegmentinformationFinancialinformationbybusinesssegmentDetails",
     "longName": "9955553 - Disclosure - Segment information - Financial information by business segment (Details)",
     "shortName": "Segment information - Financial information by business segment (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "66",
     "firstAnchor": {
      "contextRef": "c-4",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c-4",
      "name": "wprt:ResearchAndDevelopmentExpenseAdjustmentForRounding",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "unique": true
     }
    },
    "R67": {
     "role": "http://www.westport.com/role/SegmentInformationReconciliationofSegmentEBITDAtoLossbeforeincometaxesDetails",
     "longName": "9955554 - Disclosure - Segment Information - Reconciliation of Segment EBITDA to Loss before income taxes (Details)",
     "shortName": "Segment Information - Reconciliation of Segment EBITDA to Loss before income taxes (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "67",
     "firstAnchor": {
      "contextRef": "c-4",
      "name": "wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c-4",
      "name": "wprt:DepreciationDepletionAndAmortizationAdjusted",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "unique": true
     }
    },
    "R68": {
     "role": "http://www.westport.com/role/SegmentinformationAssetsDetails",
     "longName": "9955555 - Disclosure - Segment information - Assets (Details)",
     "shortName": "Segment information - Assets (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "68",
     "firstAnchor": {
      "contextRef": "c-4",
      "name": "us-gaap:SegmentExpenditureAdditionToLongLivedAssets",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c-179",
      "name": "us-gaap:SegmentExpenditureAdditionToLongLivedAssets",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "unique": true
     }
    },
    "R69": {
     "role": "http://www.westport.com/role/SegmentinformationPercentofrevenuebygeographicallocationDetails",
     "longName": "9955556 - Disclosure - Segment information - Percent of revenue by geographical location (Details)",
     "shortName": "Segment information - Percent of revenue by geographical location (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "69",
     "firstAnchor": {
      "contextRef": "c-203",
      "name": "us-gaap:ConcentrationRiskPercentage1",
      "unitRef": "number",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "2",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "wprt:ScheduleOfGeographicalRevenueInformationTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-203",
      "name": "us-gaap:ConcentrationRiskPercentage1",
      "unitRef": "number",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "2",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "wprt:ScheduleOfGeographicalRevenueInformationTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R70": {
     "role": "http://www.westport.com/role/SegmentInformationTotalassetallocationDetails",
     "longName": "9955557 - Disclosure - Segment Information - Total asset allocation (Details)",
     "shortName": "Segment Information - Total asset allocation (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "70",
     "firstAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap:Assets",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "wprt:ScheduleOfAllocationOfTotalAssetsTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c-215",
      "name": "us-gaap:Assets",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "wprt:ScheduleOfAllocationOfTotalAssetsTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "unique": true
     }
    },
    "R71": {
     "role": "http://www.westport.com/role/FinancialinstrumentsNarrativeDetails",
     "longName": "9955558 - Disclosure - Financial instruments - Narrative (Details)",
     "shortName": "Financial instruments - Narrative (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "71",
     "firstAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap:CashCashEquivalentsAndShortTermInvestments",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap:CashCashEquivalentsAndShortTermInvestments",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    },
    "R72": {
     "role": "http://www.westport.com/role/FinancialinstrumentsFinancialObligationsDetails",
     "longName": "9955559 - Disclosure - Financial instruments - Financial Obligations (Details)",
     "shortName": "Financial instruments - Financial Obligations (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "72",
     "firstAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap:ContractualObligation",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "srt:ContractualObligationFiscalYearMaturityScheduleTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap:ContractualObligation",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "srt:ContractualObligationFiscalYearMaturityScheduleTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "wprt-20250630.htm",
      "first": true,
      "unique": true
     }
    }
   },
   "tag": {
    "currency_ARS": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/currency/2025",
     "localname": "ARS",
     "presentation": [
      "http://www.westport.com/role/BasisofpreparationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Argentina Peso",
        "label": "Argentina, Pesos"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AccountingPoliciesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AccountingPoliciesAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounting Policies [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AccountsNotesAndLoansReceivableLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AccountsNotesAndLoansReceivableLineItems",
     "presentation": [
      "http://www.westport.com/role/AccountsreceivableNarrativeDetails",
      "http://www.westport.com/role/AccountsreceivableScheduleofAccountsReceivableDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accounts, Notes, Loans and Financing Receivable [Line Items]",
        "label": "Accounts, Notes, Loans and Financing Receivable [Line Items]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r309",
      "r914"
     ]
    },
    "us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AccountsPayableAndAccruedLiabilitiesCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 1.0
      },
      "http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 1.0
      },
      "http://www.westport.com/role/AccountspayableandaccruedliabilitiesDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.westport.com/role/AccountspayableandaccruedliabilitiesDetails",
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited",
      "http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accounts payable and accrued liabilities (note 10)",
        "verboseLabel": "Accounts payable",
        "totalLabel": "Accounts payable and accrued liabilities",
        "label": "Accounts Payable and Accrued Liabilities, Current",
        "documentation": "Sum of the carrying values as of the balance sheet date of obligations incurred through that date and due within one year (or the operating cycle, if longer), including liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received, taxes, interest, rent and utilities, accrued salaries and bonuses, payroll taxes and fringe benefits."
       }
      }
     },
     "auth_ref": [
      "r74",
      "r75"
     ]
    },
    "us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
     "presentation": [
      "http://www.westport.com/role/Accountspayableandaccruedliabilities"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accounts payable and accrued liabilities",
        "label": "Accounts Payable and Accrued Liabilities Disclosure [Text Block]",
        "documentation": "The entire disclosure for accounts payable and accrued liabilities at the end of the reporting period."
       }
      }
     },
     "auth_ref": [
      "r73",
      "r75",
      "r79",
      "r959"
     ]
    },
    "us-gaap_AccountsPayableAndAccruedLiabilitiesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AccountsPayableAndAccruedLiabilitiesMember",
     "presentation": [
      "http://www.westport.com/role/FinancialinstrumentsFinancialObligationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accounts payable and accrued liabilities",
        "label": "Accounts Payable and Accrued Liabilities [Member]",
        "documentation": "Primary financial statement caption encompassing accounts payable and accrued liabilities."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AccountsPayableCurrentAndNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AccountsPayableCurrentAndNoncurrent",
     "crdr": "credit",
     "presentation": [
      "http://www.westport.com/role/RelatedpartytransactionsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Payables",
        "label": "Accounts Payable",
        "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."
       }
      }
     },
     "auth_ref": [
      "r138",
      "r985"
     ]
    },
    "us-gaap_AccountsPayableTradeCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AccountsPayableTradeCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/AccountspayableandaccruedliabilitiesDetails": {
       "parentTag": "us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/AccountspayableandaccruedliabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Trade accounts payable",
        "label": "Accounts Payable, Trade, Current",
        "documentation": "Carrying value as of the balance sheet date of obligations 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)."
       }
      }
     },
     "auth_ref": [
      "r28",
      "r73"
     ]
    },
    "us-gaap_AccountsReceivableNetCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AccountsReceivableNetCurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 2.0
      },
      "http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 2.0
      },
      "http://www.westport.com/role/AccountsreceivableScheduleofAccountsReceivableDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.westport.com/role/AccountsreceivableScheduleofAccountsReceivableDetails",
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited",
      "http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accounts receivable (note 6)",
        "totalLabel": "Accounts receivable",
        "verboseLabel": "Accounts receivable",
        "label": "Accounts Receivable, after Allowance for Credit Loss, Current",
        "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."
       }
      }
     },
     "auth_ref": [
      "r913"
     ]
    },
    "us-gaap_AccruedIncomeTaxesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AccruedIncomeTaxesCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/AccountspayableandaccruedliabilitiesDetails": {
       "parentTag": "us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/AccountspayableandaccruedliabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Taxes payable",
        "label": "Accrued Income Taxes, Current",
        "documentation": "Carrying amount as of the balance sheet date of the unpaid sum of the known and estimated amounts payable to satisfy all currently due domestic and foreign income tax obligations."
       }
      }
     },
     "auth_ref": [
      "r75",
      "r136"
     ]
    },
    "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/PropertyplantandequipmentDetails": {
       "parentTag": "us-gaap_PropertyPlantAndEquipmentNet",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/PropertyplantandequipmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accumulated Depreciation",
        "label": "Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment",
        "documentation": "Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services."
       }
      }
     },
     "auth_ref": [
      "r43",
      "r203",
      "r601"
     ]
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accumulated other comprehensive loss",
        "label": "Accumulated Other Comprehensive Income (Loss), Net of Tax",
        "documentation": "Amount, after tax, of accumulated increase (decrease) in equity from transaction and other event and circumstance from nonowner source."
       }
      }
     },
     "auth_ref": [
      "r29",
      "r30",
      "r96",
      "r208",
      "r597",
      "r628",
      "r631",
      "r967"
     ]
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AccumulatedOtherComprehensiveIncomeMember",
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofShareholdersEquityunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accumulated other comprehensive loss",
        "label": "AOCI Attributable to Parent [Member]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r2",
      "r15",
      "r30",
      "r481",
      "r484",
      "r532",
      "r624",
      "r625",
      "r879",
      "r880",
      "r881",
      "r896",
      "r897",
      "r898",
      "r899"
     ]
    },
    "us-gaap_AdditionalPaidInCapitalCommonStock": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AdditionalPaidInCapitalCommonStock",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Additional paid in capital",
        "label": "Additional Paid in Capital, Common Stock",
        "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."
       }
      }
     },
     "auth_ref": [
      "r87"
     ]
    },
    "us-gaap_AdditionalPaidInCapitalMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AdditionalPaidInCapitalMember",
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofShareholdersEquityunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Additional paid in capital",
        "label": "Additional Paid-in Capital [Member]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r639",
      "r896",
      "r897",
      "r898",
      "r899",
      "r968",
      "r1023"
     ]
    },
    "us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract",
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Adjustments to reconcile net income (loss) to net cash used in continuing operating activities:",
        "label": "Adjustment to Reconcile Net Income to Cash Provided by (Used in) Operating Activity, Noncash Item [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue",
     "crdr": "credit",
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofShareholdersEquityunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Stock-based compensation",
        "label": "APIC, Share-Based Payment Arrangement, Increase for Cost Recognition",
        "documentation": "Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r409"
     ]
    },
    "currency_AllCurrenciesDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/currency/2025",
     "localname": "AllCurrenciesDomain",
     "presentation": [
      "http://www.westport.com/role/BasisofpreparationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "All Currencies [Domain]",
        "label": "All Currencies [Domain]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AllocatedShareBasedCompensationExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AllocatedShareBasedCompensationExpense",
     "crdr": "debit",
     "presentation": [
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansNarrativeDetails",
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansStockbasedcompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Compensation expense",
        "label": "Share-Based Payment Arrangement, Expense",
        "documentation": "Amount of expense for award under share-based payment arrangement. Excludes amount capitalized."
       }
      }
     },
     "auth_ref": [
      "r439",
      "r446",
      "r447"
     ]
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AllowanceForDoubtfulAccountsReceivableCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/AccountsreceivableScheduleofAccountsReceivableDetails": {
       "parentTag": "us-gaap_AccountsReceivableNetCurrent",
       "weight": -1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/AccountsreceivableScheduleofAccountsReceivableDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedTerseLabel": "Allowance for expected credit losses",
        "label": "Accounts Receivable, Allowance for Credit Loss, Current",
        "documentation": "Amount of allowance for credit loss on accounts receivable, classified as current."
       }
      }
     },
     "auth_ref": [
      "r209",
      "r310",
      "r324"
     ]
    },
    "dei_AmendmentDescription": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "AmendmentDescription",
     "presentation": [
      "http://www.westport.com/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Amendment Description",
        "label": "Amendment Description",
        "documentation": "Description of changes contained within amended document."
       }
      }
     },
     "auth_ref": []
    },
    "dei_AmendmentFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "AmendmentFlag",
     "presentation": [
      "http://www.westport.com/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Amendment Flag",
        "label": "Amendment Flag",
        "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission."
       }
      }
     },
     "auth_ref": []
    },
    "srt_AmericasMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2025",
     "localname": "AmericasMember",
     "presentation": [
      "http://www.westport.com/role/SegmentinformationPercentofrevenuebygeographicallocationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Americas",
        "label": "Americas [Member]",
        "documentation": "Continents of North and South America."
       }
      }
     },
     "auth_ref": [
      "r870",
      "r871",
      "r872",
      "r873",
      "r1025",
      "r1026",
      "r1027",
      "r1028"
     ]
    },
    "srt_AsiaMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2025",
     "localname": "AsiaMember",
     "presentation": [
      "http://www.westport.com/role/SegmentinformationPercentofrevenuebygeographicallocationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Asia",
        "label": "Asia [Member]",
        "documentation": "Continent of Asia."
       }
      }
     },
     "auth_ref": [
      "r870",
      "r871",
      "r872",
      "r873",
      "r1025",
      "r1026",
      "r1027",
      "r1028"
     ]
    },
    "us-gaap_Assets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "Assets",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails": {
       "parentTag": "us-gaap_AssetsNet",
       "weight": 1.0,
       "order": 1.0
      },
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited",
      "http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails",
      "http://www.westport.com/role/SegmentInformationTotalassetallocationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total assets",
        "terseLabel": "Total assets",
        "label": "Assets",
        "documentation": "Amount of asset recognized for present right to economic benefit."
       }
      }
     },
     "auth_ref": [
      "r134",
      "r150",
      "r206",
      "r231",
      "r233",
      "r234",
      "r268",
      "r277",
      "r295",
      "r299",
      "r318",
      "r353",
      "r354",
      "r356",
      "r357",
      "r358",
      "r359",
      "r360",
      "r362",
      "r363",
      "r471",
      "r473",
      "r499",
      "r585",
      "r586",
      "r591",
      "r667",
      "r805",
      "r806",
      "r816",
      "r835",
      "r850",
      "r851",
      "r861",
      "r930",
      "r931",
      "r979"
     ]
    },
    "us-gaap_AssetsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AssetsAbstract",
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Assets",
        "label": "Assets [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AssetsCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AssetsCurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 1.0
      },
      "http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited",
      "http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total current assets",
        "label": "Assets, Current",
        "documentation": "Amount of asset recognized for present right to economic benefit, classified as current."
       }
      }
     },
     "auth_ref": [
      "r198",
      "r212",
      "r231",
      "r233",
      "r234",
      "r318",
      "r353",
      "r354",
      "r356",
      "r357",
      "r358",
      "r359",
      "r360",
      "r362",
      "r363",
      "r471",
      "r473",
      "r499",
      "r835",
      "r930",
      "r931",
      "r979"
     ]
    },
    "us-gaap_AssetsCurrentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AssetsCurrentAbstract",
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited",
      "http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Current assets:",
        "label": "Assets, Current [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AssetsNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AssetsNet",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Net assets",
        "label": "Net Assets",
        "documentation": "Amount of net assets (liabilities)."
       }
      }
     },
     "auth_ref": [
      "r14"
     ]
    },
    "us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AssetsOfDisposalGroupIncludingDiscontinuedOperation",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total assets classified as held for sale",
        "label": "Disposal Group, Including Discontinued Operation, Assets",
        "documentation": "Amount classified as assets attributable to disposal group held for sale or disposed of."
       }
      }
     },
     "auth_ref": [
      "r1",
      "r53",
      "r67",
      "r118",
      "r196",
      "r197"
     ]
    },
    "us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation",
       "weight": 1.0,
       "order": 1.0
      },
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited",
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Current assets held for sale (note 5)",
        "totalLabel": "Current assets classified as held for sale",
        "label": "Disposal Group, Including Discontinued Operation, Assets, Current",
        "documentation": "Amount classified as assets attributable to disposal group held for sale or disposed of, expected to be disposed of within one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r1",
      "r53",
      "r67",
      "r116",
      "r118",
      "r196",
      "r197"
     ]
    },
    "wprt_AverageForeignCurrencyExchangeRateTranslation1": {
     "xbrltype": "pureItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "AverageForeignCurrencyExchangeRateTranslation1",
     "presentation": [
      "http://www.westport.com/role/BasisofpreparationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Average foreign currency exchange rate",
        "label": "Average Foreign Currency Exchange Rate Translation1",
        "documentation": "Average foreign exchange rate used to translate amounts denominated in functional currency to reporting currency."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AwardTypeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "AwardTypeAxis",
     "presentation": [
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansAggregateintrinsicvaluesDetails",
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansNarrativeDetails",
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansShareunitsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Award Type [Axis]",
        "label": "Award Type [Axis]",
        "documentation": "Information by type of award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r412",
      "r413",
      "r414",
      "r415",
      "r416",
      "r417",
      "r418",
      "r419",
      "r420",
      "r421",
      "r422",
      "r423",
      "r424",
      "r425",
      "r426",
      "r427",
      "r428",
      "r429",
      "r430",
      "r431",
      "r432",
      "r434",
      "r435",
      "r436",
      "r437",
      "r438"
     ]
    },
    "us-gaap_BasisOfAccounting": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "BasisOfAccounting",
     "presentation": [
      "http://www.westport.com/role/Basisofpreparation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Basis of preparation",
        "label": "Basis of Accounting [Text Block]",
        "documentation": "The entire disclosure for the 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)."
       }
      }
     },
     "auth_ref": [
      "r888"
     ]
    },
    "us-gaap_BasisOfAccountingPolicyPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "BasisOfAccountingPolicyPolicyTextBlock",
     "presentation": [
      "http://www.westport.com/role/BasisofpreparationPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Basis of presentation",
        "label": "Basis of Accounting, Policy [Policy Text Block]",
        "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)."
       }
      }
     },
     "auth_ref": [
      "r888"
     ]
    },
    "currency_CAD": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/currency/2025",
     "localname": "CAD",
     "presentation": [
      "http://www.westport.com/role/BasisofpreparationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Canadian Dollar",
        "label": "Canada, Dollars"
       }
      }
     },
     "auth_ref": []
    },
    "currency_CNY": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/currency/2025",
     "localname": "CNY",
     "presentation": [
      "http://www.westport.com/role/BasisofpreparationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "RMB",
        "label": "China, Yuan Renminbi"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CashCashEquivalentsAndShortTermInvestments": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "CashCashEquivalentsAndShortTermInvestments",
     "crdr": "debit",
     "presentation": [
      "http://www.westport.com/role/FinancialinstrumentsNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Cash, cash equivalents and short-term investments",
        "label": "Cash, Cash Equivalents, and Short-Term Investments",
        "documentation": "Cash includes currency on hand as well as demand deposits with banks or financial institutions. It also includes other kinds of accounts that have the general characteristics of demand deposits in that the customer may deposit additional funds at any time and effectively may withdraw funds at any time without prior notice or penalty. Cash equivalents, excluding items classified as marketable securities, include short-term, highly liquid Investments that are both readily convertible to known amounts of cash, and so near their maturity that they present minimal risk of changes in value because of changes in interest rates. Generally, only investments with original maturities of three months or less qualify under that definition. Original maturity means original maturity to the entity holding the investment. For example, both a three-month US Treasury bill and a three-year Treasury note purchased three months from maturity qualify as cash equivalents. However, a Treasury note purchased three years ago does not become a cash equivalent when its remaining maturity is three months. Short-term investments, exclusive of cash equivalents, generally consist of marketable securities intended to be sold within one year (or the normal operating cycle if longer) and may include trading securities, available-for-sale securities, or held-to-maturity securities (if maturing within one year), as applicable."
       }
      }
     },
     "auth_ref": [
      "r878"
     ]
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 1.0
      },
      "http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 1.0
      },
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited",
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited",
      "http://www.westport.com/role/LiquidityandGoingConcernDetails",
      "http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cash and cash equivalents (including restricted cash)",
        "netLabel": "Cash and cash equivalents from continuing operations, end of period (including restricted cash)",
        "verboseLabel": "Cash and cash equivalents",
        "label": "Cash, Cash Equivalent, Restricted Cash, and Restricted Cash Equivalent, Continuing Operation",
        "documentation": "Amount of cash and cash equivalent, and cash and cash equivalent restricted to withdrawal or usage; attributable to continuing operation. Cash includes, but is not limited to, currency on hand, demand deposit with financial institution, and account with general characteristic of demand deposit. Cash equivalent includes, but is not limited to, short-term, highly liquid investment that is both readily convertible to known amount of cash and so near maturity that it presents insignificant risk of change in value because of change in interest rate."
       }
      }
     },
     "auth_ref": [
      "r36",
      "r111",
      "r230"
     ]
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsDisposalGroupIncludingDiscontinuedOperations": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsDisposalGroupIncludingDiscontinuedOperations",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Less: cash and cash equivalents from discontinued operations, end of period (including restricted cash)",
        "label": "Cash, Cash Equivalent, Restricted Cash, and Restricted Cash Equivalent, Discontinued Operation",
        "documentation": "Amount of cash and cash equivalent, and cash and cash equivalent restricted to withdrawal or usage; attributable to discontinued operation. Cash includes, but is not limited to, currency on hand, demand deposit with financial institution, and account with general characteristic of demand deposit. Cash equivalent includes, but is not limited to, short-term, highly liquid investment that is both readily convertible to known amount of cash and so near maturity that it presents insignificant risk of change in value because of change in interest rate."
       }
      }
     },
     "auth_ref": [
      "r36",
      "r111",
      "r230"
     ]
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodStartLabel": "Cash and cash equivalents, beginning of period (including restricted cash)",
        "periodEndLabel": "Cash and cash equivalents, end of period (including restricted cash)",
        "label": "Cash, Cash Equivalent, Restricted Cash, and Restricted Cash Equivalent, Including Discontinued Operation",
        "documentation": "Amount of cash and cash equivalent, and cash and cash equivalent restricted to withdrawal or usage; including, but not limited to, discontinued operation. Cash includes, but is not limited to, currency on hand, demand deposit with financial institution, and account with general characteristic of demand deposit. Cash equivalent includes, but is not limited to, short-term, highly liquid investment that is both readily convertible to known amount of cash and so near maturity that it presents insignificant risk of change in value because of change in interest rate."
       }
      }
     },
     "auth_ref": [
      "r36",
      "r111",
      "r230"
     ]
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Net decrease in cash and cash equivalents",
        "label": "Cash, Cash Equivalent, Restricted Cash, and Restricted Cash Equivalent, Period Increase (Decrease), Including Exchange Rate Effect and Discontinued Operation",
        "documentation": "Amount of increase (decrease) in cash and cash equivalent, and cash and cash equivalent restricted to withdrawal or usage; including effect from exchange rate change and including, but not limited to, discontinued operation. Cash includes, but is not limited to, currency on hand, demand deposit with financial institution, and account with general characteristic of demand deposit. Cash equivalent includes, but is not limited to, short-term, highly liquid investment that is both readily convertible to known amount of cash and so near maturity that it presents insignificant risk of change in value because of change in interest rate."
       }
      }
     },
     "auth_ref": [
      "r0",
      "r111"
     ]
    },
    "us-gaap_CashProvidedByUsedInFinancingActivitiesDiscontinuedOperations": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "CashProvidedByUsedInFinancingActivitiesDiscontinuedOperations",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0,
       "order": 6.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Net cash used in financing activities of discontinued operations",
        "label": "Cash Provided by (Used in) Financing Activity, Discontinued Operation",
        "documentation": "Amount of cash inflow (outflow) from financing activity attributable to discontinued operation. Financing activity includes, but is not limited to, obtaining resource from owner and providing return on, and return of, their investment; borrowing money and repaying amount borrowed, or settling obligation; and obtaining and paying for other resource obtained from creditor on long-term credit."
       }
      }
     },
     "auth_ref": [
      "r111"
     ]
    },
    "us-gaap_CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Net cash used in investing activities of discontinued operations",
        "label": "Cash Provided by (Used in) Investing Activity, Discontinued Operation",
        "documentation": "Amount of cash inflow (outflow) from investing activity attributable to discontinued operation. Investing activity includes, but is not limited to, making and collecting loan, acquiring and disposing of debt and equity instruments, property, plant, and equipment, and other productive assets."
       }
      }
     },
     "auth_ref": [
      "r66",
      "r111"
     ]
    },
    "us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Net cash provided by (used in) operating activities of discontinued operations",
        "label": "Cash Provided by (Used in) Operating Activity, Discontinued Operation",
        "documentation": "Amount of cash inflow (outflow) from operating activity attributable to discontinued operation. Operating activity includes, but is not limited to, transaction, adjustment, and change in value not defined as investing or financing activity."
       }
      }
     },
     "auth_ref": [
      "r66",
      "r111"
     ]
    },
    "wprt_CespiraCanadaLPMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "CespiraCanadaLPMember",
     "presentation": [
      "http://www.westport.com/role/LongterminvestmentsScheduleofInvestmentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cespira Canada LP",
        "label": "Cespira Canada LP [Member]",
        "documentation": "Cespira Canada LP"
       }
      }
     },
     "auth_ref": []
    },
    "wprt_CespiraJointVentureMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "CespiraJointVentureMember",
     "presentation": [
      "http://www.westport.com/role/CompanyorganizationandoperationsDetails",
      "http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails",
      "http://www.westport.com/role/LongterminvestmentsIncomeStatementDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cespira Joint Venture",
        "label": "Cespira Joint Venture [Member]",
        "documentation": "Cespira Joint Venture"
       }
      }
     },
     "auth_ref": []
    },
    "wprt_CespiraMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "CespiraMember",
     "presentation": [
      "http://www.westport.com/role/RelatedpartytransactionsDetails",
      "http://www.westport.com/role/SegmentInformationReconciliationofSegmentEBITDAtoLossbeforeincometaxesDetails",
      "http://www.westport.com/role/SegmentinformationFinancialinformationbybusinesssegmentDetails",
      "http://www.westport.com/role/SegmentinformationNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cespira",
        "label": "Cespira [Member]",
        "documentation": "Cespira"
       }
      }
     },
     "auth_ref": []
    },
    "wprt_CespiraSwedenABMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "CespiraSwedenABMember",
     "presentation": [
      "http://www.westport.com/role/LongterminvestmentsScheduleofInvestmentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cespira Sweden AB",
        "label": "Cespira Sweden AB [Member]",
        "documentation": "Cespira Sweden AB"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CommitmentsAndContingencies": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "CommitmentsAndContingencies",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited": {
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Commitments and contingencies (note 15)",
        "label": "Commitments and Contingencies",
        "documentation": "Represents the caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur."
       }
      }
     },
     "auth_ref": [
      "r80",
      "r140",
      "r594",
      "r652"
     ]
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "CommitmentsAndContingenciesDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Commitments and Contingencies Disclosure [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "CommitmentsAndContingenciesDisclosureTextBlock",
     "presentation": [
      "http://www.westport.com/role/Commitmentsandcontingencies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Commitments and contingencies",
        "label": "Commitments and Contingencies Disclosure [Text Block]",
        "documentation": "The entire disclosure for commitments and contingencies."
       }
      }
     },
     "auth_ref": [
      "r120",
      "r350",
      "r351",
      "r774",
      "r922",
      "r926"
     ]
    },
    "us-gaap_CommonStockMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "CommonStockMember",
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofShareholdersEquityunaudited",
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Common stock",
        "terseLabel": "Common Stock",
        "label": "Common Stock [Member]",
        "documentation": "Stock that is subordinate to all other stock of the issuer."
       }
      }
     },
     "auth_ref": [
      "r852",
      "r853",
      "r854",
      "r856",
      "r857",
      "r858",
      "r859",
      "r896",
      "r897",
      "r899",
      "r968",
      "r1020",
      "r1023"
     ]
    },
    "us-gaap_CommonStockSharesIssued": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "CommonStockSharesIssued",
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunauditedParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Common shares, shares issued (in shares)",
        "label": "Common Stock, Shares, Issued",
        "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."
       }
      }
     },
     "auth_ref": [
      "r85"
     ]
    },
    "us-gaap_CommonStockSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "CommonStockSharesOutstanding",
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunauditedParenthetical",
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofShareholdersEquityunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Common shares, shares outstanding (in shares)",
        "periodStartLabel": "Balance (in shares)",
        "periodEndLabel": "Balance (in shares)",
        "label": "Common Stock, Shares, Outstanding",
        "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation."
       }
      }
     },
     "auth_ref": [
      "r16",
      "r85",
      "r653",
      "r673",
      "r1023",
      "r1024"
     ]
    },
    "us-gaap_CommonStockValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "CommonStockValue",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Unlimited common and preferred shares, no par value 17,351,005 (2024 - 17,282,934) common shares issued and outstanding",
        "label": "Common Stock, Value, Issued",
        "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."
       }
      }
     },
     "auth_ref": [
      "r85",
      "r389",
      "r394",
      "r596",
      "r835"
     ]
    },
    "us-gaap_ComprehensiveIncomeNetOfTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ComprehensiveIncomeNetOfTax",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Comprehensive income (loss)",
        "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Parent",
        "documentation": "Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners."
       }
      }
     },
     "auth_ref": [
      "r31",
      "r215",
      "r217",
      "r221",
      "r583",
      "r607",
      "r608"
     ]
    },
    "wprt_ComputerEquipmentAndSoftwareMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "ComputerEquipmentAndSoftwareMember",
     "presentation": [
      "http://www.westport.com/role/PropertyplantandequipmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Computer equipment and software",
        "label": "Computer Equipment and Software [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ConcentrationRiskBenchmarkDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ConcentrationRiskBenchmarkDomain",
     "presentation": [
      "http://www.westport.com/role/SegmentinformationPercentofrevenuebygeographicallocationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Concentration Risk Benchmark [Domain]",
        "label": "Concentration Risk Benchmark [Domain]",
        "documentation": "The denominator in a calculation of a disclosed concentration risk percentage."
       }
      }
     },
     "auth_ref": [
      "r271",
      "r306",
      "r632",
      "r633",
      "r773",
      "r901",
      "r902",
      "r903",
      "r904",
      "r905"
     ]
    },
    "us-gaap_ConcentrationRiskByBenchmarkAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ConcentrationRiskByBenchmarkAxis",
     "presentation": [
      "http://www.westport.com/role/SegmentinformationPercentofrevenuebygeographicallocationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Concentration Risk Benchmark [Axis]",
        "label": "Concentration Risk Benchmark [Axis]",
        "documentation": "Information by benchmark of concentration risk."
       }
      }
     },
     "auth_ref": [
      "r271",
      "r306",
      "r632",
      "r633",
      "r773",
      "r901",
      "r902",
      "r903",
      "r904",
      "r905"
     ]
    },
    "us-gaap_ConcentrationRiskByTypeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ConcentrationRiskByTypeAxis",
     "presentation": [
      "http://www.westport.com/role/SegmentinformationPercentofrevenuebygeographicallocationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Concentration Risk Type [Axis]",
        "label": "Concentration Risk Type [Axis]",
        "documentation": "Information by type of concentration risk, for example, but not limited to, asset, liability, net assets, geographic, customer, employees, supplier, lender."
       }
      }
     },
     "auth_ref": [
      "r271",
      "r306",
      "r632",
      "r633",
      "r773",
      "r901",
      "r902",
      "r903",
      "r904",
      "r905"
     ]
    },
    "us-gaap_ConcentrationRiskPercentage1": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ConcentrationRiskPercentage1",
     "presentation": [
      "http://www.westport.com/role/SegmentinformationPercentofrevenuebygeographicallocationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Concentration percentage",
        "label": "Concentration Risk, Percentage",
        "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."
       }
      }
     },
     "auth_ref": [
      "r271",
      "r306",
      "r901",
      "r902",
      "r903",
      "r904",
      "r905"
     ]
    },
    "us-gaap_ConcentrationRiskTypeDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ConcentrationRiskTypeDomain",
     "presentation": [
      "http://www.westport.com/role/SegmentinformationPercentofrevenuebygeographicallocationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Concentration Risk Type [Domain]",
        "label": "Concentration Risk Type [Domain]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r271",
      "r306",
      "r632",
      "r633",
      "r773",
      "r901",
      "r902",
      "r903",
      "r904",
      "r905"
     ]
    },
    "srt_ConsolidationEliminationsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2025",
     "localname": "ConsolidationEliminationsMember",
     "presentation": [
      "http://www.westport.com/role/SegmentinformationFinancialinformationbybusinesssegmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Consolidation, Eliminations",
        "label": "Consolidation, Eliminations [Member]",
        "documentation": "Eliminating entries used in consolidating a parent entity and its subsidiaries."
       }
      }
     },
     "auth_ref": [
      "r231",
      "r236"
     ]
    },
    "srt_ConsolidationItemsAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2025",
     "localname": "ConsolidationItemsAxis",
     "presentation": [
      "http://www.westport.com/role/SegmentInformationReconciliationofSegmentEBITDAtoLossbeforeincometaxesDetails",
      "http://www.westport.com/role/SegmentInformationTotalassetallocationDetails",
      "http://www.westport.com/role/SegmentinformationAssetsDetails",
      "http://www.westport.com/role/SegmentinformationFinancialinformationbybusinesssegmentDetails",
      "http://www.westport.com/role/SegmentinformationNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Consolidation Items [Axis]",
        "label": "Consolidation Items [Axis]",
        "documentation": "Information by components, eliminations, non-segment corporate-level activity and reconciling items used in consolidating a parent entity and its subsidiaries or its operating segments."
       }
      }
     },
     "auth_ref": [
      "r148",
      "r162",
      "r179",
      "r180",
      "r181",
      "r182",
      "r183",
      "r184",
      "r185",
      "r186",
      "r187",
      "r231",
      "r232",
      "r236",
      "r237",
      "r268",
      "r279",
      "r293",
      "r294",
      "r295",
      "r296",
      "r297",
      "r299",
      "r300",
      "r301",
      "r353",
      "r354",
      "r355",
      "r356",
      "r358",
      "r359",
      "r360",
      "r361",
      "r362",
      "r589",
      "r805",
      "r806",
      "r874",
      "r875",
      "r930",
      "r931"
     ]
    },
    "srt_ConsolidationItemsDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2025",
     "localname": "ConsolidationItemsDomain",
     "presentation": [
      "http://www.westport.com/role/SegmentInformationReconciliationofSegmentEBITDAtoLossbeforeincometaxesDetails",
      "http://www.westport.com/role/SegmentInformationTotalassetallocationDetails",
      "http://www.westport.com/role/SegmentinformationAssetsDetails",
      "http://www.westport.com/role/SegmentinformationFinancialinformationbybusinesssegmentDetails",
      "http://www.westport.com/role/SegmentinformationNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Consolidation Items [Domain]",
        "label": "Consolidation Items [Domain]",
        "documentation": "Components, elimination, non-segment corporate-level activity and reconciling items used in consolidating a parent entity and its subsidiaries or its operating segments."
       }
      }
     },
     "auth_ref": [
      "r148",
      "r162",
      "r179",
      "r180",
      "r181",
      "r182",
      "r183",
      "r184",
      "r185",
      "r186",
      "r187",
      "r231",
      "r232",
      "r236",
      "r237",
      "r268",
      "r279",
      "r293",
      "r294",
      "r295",
      "r296",
      "r297",
      "r299",
      "r300",
      "r301",
      "r353",
      "r354",
      "r355",
      "r356",
      "r358",
      "r359",
      "r360",
      "r361",
      "r362",
      "r589",
      "r805",
      "r806",
      "r874",
      "r875",
      "r930",
      "r931"
     ]
    },
    "us-gaap_ContractWithCustomerLiabilityCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ContractWithCustomerLiabilityCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/AccountspayableandaccruedliabilitiesDetails": {
       "parentTag": "us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/AccountspayableandaccruedliabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Deferred revenue",
        "label": "Contract with Customer, Liability, Current",
        "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current."
       }
      }
     },
     "auth_ref": [
      "r397",
      "r398",
      "r399",
      "r403"
     ]
    },
    "us-gaap_ContractualObligation": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ContractualObligation",
     "crdr": "credit",
     "presentation": [
      "http://www.westport.com/role/FinancialinstrumentsFinancialObligationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Carrying amount",
        "label": "Contractual Obligation",
        "documentation": "Amount of contractual obligation, including, but not limited to, long-term debt, lease obligation, purchase obligation, and other commitments."
       }
      }
     },
     "auth_ref": [
      "r890",
      "r895",
      "r983"
     ]
    },
    "us-gaap_ContractualObligationDueAfterFifthYear": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ContractualObligationDueAfterFifthYear",
     "crdr": "credit",
     "presentation": [
      "http://www.westport.com/role/FinancialinstrumentsFinancialObligationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Contractual obligation, due after 5 years",
        "label": "Contractual Obligation, to be Paid, after Year Five",
        "documentation": "Amount of contractual obligation to be paid after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": [
      "r890",
      "r895",
      "r983"
     ]
    },
    "us-gaap_ContractualObligationDueInFourthAndFifthYear": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ContractualObligationDueInFourthAndFifthYear",
     "crdr": "credit",
     "presentation": [
      "http://www.westport.com/role/FinancialinstrumentsFinancialObligationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Contractual obligation, due 4-5 years",
        "label": "Contractual Obligation, to be Paid, Year Four and Five",
        "documentation": "Amount of contractual obligation to be paid in fourth and fifth fiscal years following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": [
      "r890",
      "r895",
      "r983"
     ]
    },
    "us-gaap_ContractualObligationDueInNextTwelveMonths": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ContractualObligationDueInNextTwelveMonths",
     "crdr": "credit",
     "presentation": [
      "http://www.westport.com/role/FinancialinstrumentsFinancialObligationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Contractual obligation, due less than 1 year",
        "label": "Contractual Obligation, to be Paid, Year One",
        "documentation": "Amount of contractual obligation to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": [
      "r890",
      "r895",
      "r983"
     ]
    },
    "us-gaap_ContractualObligationDueInSecondAndThirdYear": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ContractualObligationDueInSecondAndThirdYear",
     "crdr": "credit",
     "presentation": [
      "http://www.westport.com/role/FinancialinstrumentsFinancialObligationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Contractual obligation, due 1-3 years",
        "label": "Contractual Obligation, to be Paid, Year Two and Three",
        "documentation": "Amount of contractual obligation to be paid in second and third fiscal years following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": [
      "r890",
      "r895",
      "r983"
     ]
    },
    "srt_ContractualObligationFiscalYearMaturityScheduleTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/srt/2025",
     "localname": "ContractualObligationFiscalYearMaturityScheduleTableTextBlock",
     "presentation": [
      "http://www.westport.com/role/FinancialinstrumentsTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Contractual Obligation, Fiscal Year Maturity Schedule",
        "label": "Contractual Obligation, Fiscal Year Maturity [Table Text Block]",
        "documentation": "Tabular disclosure of contractual obligation by timing of payment due. Includes, but is not limited to, long-term debt obligation, lease obligation, and purchase obligation."
       }
      }
     },
     "auth_ref": [
      "r869",
      "r890",
      "r895",
      "r983"
     ]
    },
    "wprt_ContractualObligationsRepaymentsTotal": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "ContractualObligationsRepaymentsTotal",
     "crdr": "credit",
     "presentation": [
      "http://www.westport.com/role/FinancialinstrumentsFinancialObligationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Contractual cash\u00a0flows",
        "label": "Contractual Obligations, Repayments, Total",
        "documentation": "Represents the amount of contractual cashflows obligation repayments."
       }
      }
     },
     "auth_ref": []
    },
    "wprt_ContractualObligationsTypeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "ContractualObligationsTypeAxis",
     "presentation": [
      "http://www.westport.com/role/FinancialinstrumentsFinancialObligationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Contractual Obligations Type [Axis]",
        "label": "Contractual Obligations Type [Axis]"
       }
      }
     },
     "auth_ref": []
    },
    "wprt_ContractualObligationsTypeDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "ContractualObligationsTypeDomain",
     "presentation": [
      "http://www.westport.com/role/FinancialinstrumentsFinancialObligationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Contractual Obligations Type [Domain]",
        "label": "Contractual Obligations Type [Domain]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CorporateNonSegmentMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "CorporateNonSegmentMember",
     "presentation": [
      "http://www.westport.com/role/SegmentInformationReconciliationofSegmentEBITDAtoLossbeforeincometaxesDetails",
      "http://www.westport.com/role/SegmentInformationTotalassetallocationDetails",
      "http://www.westport.com/role/SegmentinformationAssetsDetails",
      "http://www.westport.com/role/SegmentinformationFinancialinformationbybusinesssegmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Corporate",
        "label": "Segment Reporting, Reconciling Item, Corporate Nonsegment [Member]",
        "documentation": "Corporate headquarters or functional department that may not earn revenues or may earn revenues that are only incidental to the activities of the entity and is not considered an operating segment."
       }
      }
     },
     "auth_ref": [
      "r22",
      "r294",
      "r295",
      "r296",
      "r297",
      "r300",
      "r908"
     ]
    },
    "us-gaap_CostOfGoodsAndServicesSold": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "CostOfGoodsAndServicesSold",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited": {
       "parentTag": "us-gaap_GrossProfit",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited",
      "http://www.westport.com/role/SegmentinformationFinancialinformationbybusinesssegmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cost of revenue",
        "label": "Cost of Product and Service Sold",
        "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."
       }
      }
     },
     "auth_ref": [
      "r102",
      "r103",
      "r544",
      "r790",
      "r794",
      "r827",
      "r885"
     ]
    },
    "us-gaap_CostOfRevenue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "CostOfRevenue",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/LongterminvestmentsIncomeStatementDetails": {
       "parentTag": "us-gaap_GrossProfit",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/LongterminvestmentsIncomeStatementDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cost of revenue",
        "label": "Cost of Revenue",
        "documentation": "The aggregate cost of goods produced and sold and services rendered during the reporting period."
       }
      }
     },
     "auth_ref": [
      "r104",
      "r231",
      "r233",
      "r234",
      "r318",
      "r353",
      "r354",
      "r356",
      "r357",
      "r358",
      "r359",
      "r360",
      "r362",
      "r363",
      "r499",
      "r805",
      "r930"
     ]
    },
    "us-gaap_CostOfRevenueAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "CostOfRevenueAbstract",
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited",
      "http://www.westport.com/role/LongterminvestmentsIncomeStatementDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Operating expenses:",
        "label": "Cost of Revenue [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CostOfSalesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "CostOfSalesMember",
     "presentation": [
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansStockbasedcompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cost of revenue",
        "label": "Cost of Sales [Member]",
        "documentation": "Primary financial statement caption encompassing cost of sales."
       }
      }
     },
     "auth_ref": [
      "r828"
     ]
    },
    "us-gaap_CostsAndExpenses": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "CostsAndExpenses",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited": {
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited",
      "http://www.westport.com/role/LongterminvestmentsIncomeStatementDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Operating expenses",
        "label": "Costs and Expenses",
        "documentation": "Total costs of sales and operating expenses for the period."
       }
      }
     },
     "auth_ref": [
      "r108"
     ]
    },
    "dei_CoverAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "CoverAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Cover [Abstract]",
        "documentation": "Cover page."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CreditFacilityAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "CreditFacilityAxis",
     "presentation": [
      "http://www.westport.com/role/LongtermdebtNarrativeDetails",
      "http://www.westport.com/role/LongtermdebtScheduleofMaturitiesonSeniorFinancingDetails",
      "http://www.westport.com/role/LongtermdebtTermLoanFacilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Credit Facility [Axis]",
        "label": "Credit Facility [Axis]",
        "documentation": "Information by type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing."
       }
      }
     },
     "auth_ref": [
      "r352",
      "r929"
     ]
    },
    "us-gaap_CreditFacilityDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "CreditFacilityDomain",
     "presentation": [
      "http://www.westport.com/role/LongtermdebtNarrativeDetails",
      "http://www.westport.com/role/LongtermdebtScheduleofMaturitiesonSeniorFinancingDetails",
      "http://www.westport.com/role/LongtermdebtTermLoanFacilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Credit Facility [Domain]",
        "label": "Credit Facility [Domain]",
        "documentation": "Type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing."
       }
      }
     },
     "auth_ref": [
      "r352",
      "r929"
     ]
    },
    "wprt_CumminsWestportIncMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "CumminsWestportIncMember",
     "presentation": [
      "http://www.westport.com/role/AccountsreceivableNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cummins Westport Inc",
        "label": "Cummins Westport Inc [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CumulativeTranslationAdjustmentNetOfTaxPeriodIncreaseDecrease": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "CumulativeTranslationAdjustmentNetOfTaxPeriodIncreaseDecrease",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited": {
       "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Cumulative translation adjustment",
        "label": "Cumulative Translation Adjustment, Net of Tax, Period Increase (Decrease)",
        "documentation": "The increase (decrease) in cumulative translation adjustment before transfers included in determining net income."
       }
      }
     },
     "auth_ref": [
      "r970"
     ]
    },
    "srt_CurrencyAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2025",
     "localname": "CurrencyAxis",
     "presentation": [
      "http://www.westport.com/role/BasisofpreparationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Currency [Axis]",
        "label": "Currency [Axis]",
        "documentation": "Information by currency."
       }
      }
     },
     "auth_ref": [
      "r971"
     ]
    },
    "dei_CurrentFiscalYearEndDate": {
     "xbrltype": "gMonthDayItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "CurrentFiscalYearEndDate",
     "presentation": [
      "http://www.westport.com/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Current Fiscal Year End Date",
        "label": "Current Fiscal Year End Date",
        "documentation": "End date of current fiscal year in the format --MM-DD."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DebtAndCapitalLeaseObligations": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DebtAndCapitalLeaseObligations",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/LongtermdebtTermLoanFacilitiesDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.westport.com/role/LongtermdebtTermLoanFacilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Debt and capital lease obligations",
        "label": "Debt and Lease Obligation",
        "documentation": "Amount of short-term and long-term debt and lease obligation."
       }
      }
     },
     "auth_ref": [
      "r135",
      "r139"
     ]
    },
    "us-gaap_DebtDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DebtDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Disclosure [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DebtInstrumentAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DebtInstrumentAxis",
     "presentation": [
      "http://www.westport.com/role/LongtermdebtNarrativeDetails",
      "http://www.westport.com/role/LongtermdebtTermLoanFacilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Debt Instrument [Axis]",
        "label": "Debt Instrument [Axis]",
        "documentation": "Information by type of debt instrument, including, but not limited to, draws against credit facilities."
       }
      }
     },
     "auth_ref": [
      "r23",
      "r74",
      "r75",
      "r135",
      "r139",
      "r364",
      "r365",
      "r366",
      "r367",
      "r368",
      "r369",
      "r370",
      "r371",
      "r372",
      "r373",
      "r374",
      "r375",
      "r376",
      "r377",
      "r378",
      "r379",
      "r811",
      "r812",
      "r813",
      "r814",
      "r815",
      "r833",
      "r889",
      "r890",
      "r891",
      "r895",
      "r923",
      "r924",
      "r925",
      "r972",
      "r973",
      "r983"
     ]
    },
    "us-gaap_DebtInstrumentCarryingAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DebtInstrumentCarryingAmount",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/LongtermdebtScheduleofMaturitiesonSeniorFinancingDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.westport.com/role/LongtermdebtScheduleofMaturitiesonSeniorFinancingDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Long-term debt",
        "label": "Long-Term Debt, Gross",
        "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."
       }
      }
     },
     "auth_ref": [
      "r23",
      "r139",
      "r381"
     ]
    },
    "wprt_DebtInstrumentCovenantMinimumCashRequirement": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "DebtInstrumentCovenantMinimumCashRequirement",
     "crdr": "debit",
     "presentation": [
      "http://www.westport.com/role/LiquidityandGoingConcernDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Minimum cash requirement",
        "label": "Debt Instrument, Covenant, Minimum Cash Requirement",
        "documentation": "Debt Instrument, Covenant, Minimum Cash Requirement"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DebtInstrumentFaceAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DebtInstrumentFaceAmount",
     "crdr": "credit",
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsNarrativeDetails",
      "http://www.westport.com/role/LongtermdebtNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Face amount of loan",
        "terseLabel": "Long-term debt",
        "label": "Debt Instrument, Face Amount",
        "documentation": "Face (par) amount of debt instrument at time of issuance."
       }
      }
     },
     "auth_ref": [
      "r364",
      "r517",
      "r518",
      "r812",
      "r813",
      "r833"
     ]
    },
    "us-gaap_DebtInstrumentInterestRateEffectivePercentage": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DebtInstrumentInterestRateEffectivePercentage",
     "presentation": [
      "http://www.westport.com/role/LongtermdebtTermLoanFacilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Effective rate on debt",
        "label": "Debt Instrument, Interest Rate, Effective Percentage",
        "documentation": "Effective interest rate for the funds borrowed under the debt agreement considering interest compounding and original issue discount or premium."
       }
      }
     },
     "auth_ref": [
      "r77",
      "r382",
      "r517",
      "r518",
      "r833"
     ]
    },
    "us-gaap_DebtInstrumentLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DebtInstrumentLineItems",
     "presentation": [
      "http://www.westport.com/role/LiquidityandGoingConcernDetails",
      "http://www.westport.com/role/LongtermdebtNarrativeDetails",
      "http://www.westport.com/role/LongtermdebtScheduleofMaturitiesonSeniorFinancingDetails",
      "http://www.westport.com/role/LongtermdebtTermLoanFacilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Debt Instrument [Line Items]",
        "label": "Debt Instrument [Line Items]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r364",
      "r365",
      "r366",
      "r367",
      "r368",
      "r369",
      "r370",
      "r371",
      "r372",
      "r373",
      "r374",
      "r375",
      "r376",
      "r377",
      "r378",
      "r379",
      "r380",
      "r479",
      "r589",
      "r811",
      "r812",
      "r813",
      "r814",
      "r815",
      "r833",
      "r889",
      "r890",
      "r891",
      "r895",
      "r972",
      "r973"
     ]
    },
    "us-gaap_DebtInstrumentNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DebtInstrumentNameDomain",
     "presentation": [
      "http://www.westport.com/role/LongtermdebtNarrativeDetails",
      "http://www.westport.com/role/LongtermdebtTermLoanFacilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Debt Instrument, Name [Domain]",
        "label": "Debt Instrument, Name [Domain]",
        "documentation": "The name for the particular debt instrument or borrowing that distinguishes it from other debt instruments or borrowings, including draws against credit facilities."
       }
      }
     },
     "auth_ref": [
      "r23",
      "r364",
      "r365",
      "r366",
      "r367",
      "r368",
      "r369",
      "r370",
      "r371",
      "r372",
      "r373",
      "r374",
      "r375",
      "r376",
      "r377",
      "r378",
      "r379",
      "r811",
      "r812",
      "r813",
      "r814",
      "r815",
      "r833",
      "r889",
      "r890",
      "r891",
      "r895",
      "r923",
      "r924",
      "r925",
      "r972",
      "r973",
      "r983"
     ]
    },
    "us-gaap_DebtInstrumentTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DebtInstrumentTable",
     "presentation": [
      "http://www.westport.com/role/LiquidityandGoingConcernDetails",
      "http://www.westport.com/role/LongtermdebtNarrativeDetails",
      "http://www.westport.com/role/LongtermdebtScheduleofMaturitiesonSeniorFinancingDetails",
      "http://www.westport.com/role/LongtermdebtTermLoanFacilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Long-term Debt Instruments [Table]",
        "label": "Schedule of Long-Term Debt Instruments [Table]",
        "documentation": "Disclosure of information about long-term debt instrument or arrangement."
       }
      }
     },
     "auth_ref": [
      "r23",
      "r44",
      "r45",
      "r51",
      "r122",
      "r123",
      "r364",
      "r365",
      "r366",
      "r367",
      "r368",
      "r369",
      "r370",
      "r371",
      "r372",
      "r373",
      "r374",
      "r375",
      "r376",
      "r377",
      "r378",
      "r379",
      "r380",
      "r479",
      "r589",
      "r811",
      "r812",
      "r813",
      "r814",
      "r815",
      "r833",
      "r889",
      "r890",
      "r891",
      "r895",
      "r972",
      "r973"
     ]
    },
    "us-gaap_DebtLongtermAndShorttermCombinedAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DebtLongtermAndShorttermCombinedAmount",
     "crdr": "credit",
     "presentation": [
      "http://www.westport.com/role/LiquidityandGoingConcernDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Long-term debt",
        "label": "Debt, Long-Term and Short-Term, Combined Amount",
        "documentation": "Represents the aggregate of total long-term debt, including current maturities and short-term debt."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DeconsolidationGainOrLossAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DeconsolidationGainOrLossAmount",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited": {
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0,
       "order": 3.0
      },
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "weight": -1.0,
       "order": 9.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited",
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited",
      "http://www.westport.com/role/SegmentInformationReconciliationofSegmentEBITDAtoLossbeforeincometaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Gain on deconsolidation",
        "negatedLabel": "Gain on deconsolidation",
        "negatedTerseLabel": "Gain on deconsolidation (note 5)",
        "label": "Deconsolidation, Gain (Loss), Amount",
        "documentation": "Amount of gain (loss) from deconsolidation of subsidiary and derecognition of group of assets constituting transfer of business or nonprofit activity, excluding conveyance of oil and gas mineral rights and transfer of good or service in contract with customer."
       }
      }
     },
     "auth_ref": [
      "r50",
      "r223"
     ]
    },
    "us-gaap_DeferredIncomeTaxExpenseBenefit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DeferredIncomeTaxExpenseBenefit",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Deferred income tax (recovery)",
        "label": "Deferred Income Tax Expense (Benefit)",
        "documentation": "Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations."
       }
      }
     },
     "auth_ref": [
      "r9",
      "r156",
      "r889",
      "r894"
     ]
    },
    "us-gaap_DeferredIncomeTaxLiabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DeferredIncomeTaxLiabilities",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Deferred income tax liabilities",
        "label": "Deferred Tax Liabilities, Gross",
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences."
       }
      }
     },
     "auth_ref": [
      "r81",
      "r82",
      "r137",
      "r451"
     ]
    },
    "wprt_DeferredShareUnitsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "DeferredShareUnitsMember",
     "presentation": [
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "DSUs",
        "label": "Deferred Share Units [Member]",
        "documentation": "Deferred Share Units"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DeferredTaxAssetsGross": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DeferredTaxAssetsGross",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Deferred tax assets",
        "label": "Deferred Tax Assets, Gross",
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards."
       }
      }
     },
     "auth_ref": [
      "r452"
     ]
    },
    "us-gaap_DepreciationAmortizationAndAccretionNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DepreciationAmortizationAndAccretionNet",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/SegmentinformationFinancialinformationbybusinesssegmentDetails": {
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0,
       "order": 4.0
      },
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited": {
       "parentTag": "us-gaap_CostsAndExpenses",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited",
      "http://www.westport.com/role/LongterminvestmentsIncomeStatementDetails",
      "http://www.westport.com/role/SegmentinformationFinancialinformationbybusinesssegmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Depreciation and amortization",
        "label": "Depreciation, Amortization and Accretion, Net",
        "documentation": "The aggregate net amount of depreciation, amortization, and accretion recognized during an accounting period. As a noncash item, the net amount is added back to net income when calculating cash provided by or used in operations using the indirect method."
       }
      }
     },
     "auth_ref": [
      "r9"
     ]
    },
    "us-gaap_DepreciationDepletionAndAmortization": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DepreciationDepletionAndAmortization",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited",
      "http://www.westport.com/role/SegmentinformationFinancialinformationbybusinesssegmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "netLabel": "Depreciation and amortization",
        "terseLabel": "Add back: Depreciation &amp; amortization",
        "label": "Depreciation, Depletion and Amortization",
        "documentation": "The aggregate expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the assets."
       }
      }
     },
     "auth_ref": [
      "r9",
      "r225",
      "r268",
      "r282",
      "r299",
      "r789",
      "r805",
      "r806"
     ]
    },
    "wprt_DepreciationDepletionAndAmortizationAdjusted": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "DepreciationDepletionAndAmortizationAdjusted",
     "crdr": "debit",
     "presentation": [
      "http://www.westport.com/role/SegmentInformationReconciliationofSegmentEBITDAtoLossbeforeincometaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Depreciation and amortization",
        "label": "Depreciation, Depletion And Amortization, Adjusted",
        "documentation": "Depreciation, Depletion And Amortization, Adjusted"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
     "presentation": [
      "http://www.westport.com/role/Sharecapitalstockoptionsandotherstockbasedplans"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Share capital, stock options and other stock-based plans",
        "label": "Share-Based Payment Arrangement [Text Block]",
        "documentation": "The entire disclosure for share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r407",
      "r411",
      "r440",
      "r441",
      "r443",
      "r821"
     ]
    },
    "us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Payment Arrangement [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Income (loss) from discontinued operations before income tax",
        "label": "Discontinued Operation, Income (Loss) from Discontinued Operation, before Income Tax",
        "documentation": "Amount before tax of income (loss) from a discontinued operation. Includes, but is not limited to, the income (loss) from operations during the phase-out period, gain (loss) on disposal, gain (loss) for reversal of write-down (write-down) to fair value, less cost to sell, and adjustments to a prior period gain (loss) on disposal."
       }
      }
     },
     "auth_ref": [
      "r54",
      "r55",
      "r56",
      "r57",
      "r58",
      "r64",
      "r101",
      "r988"
     ]
    },
    "us-gaap_DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax",
       "weight": -1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsNarrativeDetails",
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Loss from classifying the discontinued operations as held-for-sale",
        "negatedTerseLabel": "Loss from classifying the discontinued operations as held-for-sale",
        "label": "Discontinued Operation, Provision for Loss (Gain) on Disposal, before Income Tax",
        "documentation": "Amount before tax of (gain) loss recognized for the (reversal of write-down) write-down to fair value, less cost to sell, of a discontinued operation."
       }
      }
     },
     "auth_ref": [
      "r54",
      "r56",
      "r58"
     ]
    },
    "us-gaap_DiscontinuedOperationTaxEffectOfDiscontinuedOperation": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DiscontinuedOperationTaxEffectOfDiscontinuedOperation",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Income tax expense",
        "label": "Discontinued Operation, Tax Effect of Discontinued Operation",
        "documentation": "Amount of tax expense (benefit) related to a discontinued operation. Includes, but is not limited to, tax expense (benefit) related to income (loss) from operations during the phase-out period, tax expense (benefit) related to gain (loss) on disposal, tax expense (benefit) related to gain (loss) for reversal of write-down (write-down) to fair value, less cost to sell, and tax expense (benefit) related to adjustments of a prior period gain (loss) on disposal."
       }
      }
     },
     "auth_ref": [
      "r55",
      "r56",
      "r57",
      "r58",
      "r64",
      "r69",
      "r449",
      "r457",
      "r458"
     ]
    },
    "us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DiscontinuedOperationsAndDisposalGroupsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Discontinued Operations and Disposal Groups [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DiscontinuedOperationsDisposedOfBySaleMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DiscontinuedOperationsDisposedOfBySaleMember",
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsNarrativeDetails",
      "http://www.westport.com/role/LiquidityandGoingConcernDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Discontinued Operations, Disposed of by Sale",
        "label": "Discontinued Operations, Disposed of by Sale [Member]",
        "documentation": "Component or group of components representing strategic shift that has or will have major effect on operation and financial result, disposed of by sale."
       }
      }
     },
     "auth_ref": [
      "r5"
     ]
    },
    "us-gaap_DiscontinuedOperationsHeldforsaleMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DiscontinuedOperationsHeldforsaleMember",
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails",
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsNarrativeDetails",
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails",
      "http://www.westport.com/role/LiquidityandGoingConcernDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Discontinued Operations, Held-for-Sale",
        "label": "Discontinued Operations, Held-for-Sale [Member]",
        "documentation": "Component or group of components representing strategic shift that has or will have major effect on operation and financial result and business and nonprofit activity on acquisition and upon joint venture formation, classified as held-for-sale."
       }
      }
     },
     "auth_ref": [
      "r4",
      "r6",
      "r196"
     ]
    },
    "us-gaap_DisposalGroupClassificationAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DisposalGroupClassificationAxis",
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails",
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsNarrativeDetails",
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails",
      "http://www.westport.com/role/LiquidityandGoingConcernDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Disposal Group Classification [Axis]",
        "label": "Disposal Group Classification [Axis]",
        "documentation": "Information by disposal group classification."
       }
      }
     },
     "auth_ref": [
      "r196"
     ]
    },
    "us-gaap_DisposalGroupClassificationDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DisposalGroupClassificationDomain",
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails",
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsNarrativeDetails",
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails",
      "http://www.westport.com/role/LiquidityandGoingConcernDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Disposal Group Classification [Domain]",
        "label": "Disposal Group Classification [Domain]",
        "documentation": "Component or group of components disposed of, including but not limited to, disposal group held-for-sale or disposed of by sale, disposed of by means other than sale, and discontinued operations."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accounts receivable",
        "label": "Disposal Group, Including Discontinued Operation, Accounts, Notes and Loans Receivable, Net",
        "documentation": "Amount classified as accounts, notes and loans receivable attributable to disposal group held for sale or disposed of."
       }
      }
     },
     "auth_ref": [
      "r1",
      "r53",
      "r67",
      "r118"
     ]
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationAccountsPayableAndAccruedLiabilitiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DisposalGroupIncludingDiscontinuedOperationAccountsPayableAndAccruedLiabilitiesCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accounts payable and accrued liabilities",
        "label": "Disposal Group, Including Discontinued Operation, Accounts Payable and Accrued Liabilities, Current",
        "documentation": "Amount classified as accounts payable and accrued liabilities attributable to disposal group held for sale or disposed of, expected to be disposed of within one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r1",
      "r53",
      "r67",
      "r116",
      "r118"
     ]
    },
    "wprt_DisposalGroupIncludingDiscontinuedOperationAdditionsToLongLivedAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "DisposalGroupIncludingDiscontinuedOperationAdditionsToLongLivedAssets",
     "crdr": "debit",
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Additions to long-lived assets",
        "label": "Disposal Group, Including Discontinued Operation, Additions To Long-Lived Assets",
        "documentation": "Disposal Group, Including Discontinued Operation, Additions To Long-Lived Assets"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation",
       "weight": 1.0,
       "order": 2.0
      },
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 6.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited",
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Non-current assets held for sale (note 5)",
        "totalLabel": "Long-term assets classified as held for sale",
        "label": "Disposal Group, Including Discontinued Operation, Assets, Noncurrent",
        "documentation": "Amount classified as assets attributable to disposal group held for sale or disposed of, expected to be disposed of after one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r1",
      "r3",
      "r53",
      "r67",
      "r118",
      "r196",
      "r197"
     ]
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails",
      "http://www.westport.com/role/LiquidityandGoingConcernDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Cash and cash equivalents classified as held for sale",
        "terseLabel": "Cash",
        "label": "Disposal Group, Including Discontinued Operation, Cash and Cash Equivalents",
        "documentation": "Amount classified as cash and cash equivalents attributable to disposal group held for sale or disposed of."
       }
      }
     },
     "auth_ref": [
      "r1",
      "r53",
      "r67",
      "r118"
     ]
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DisposalGroupIncludingDiscontinuedOperationConsideration",
     "crdr": "debit",
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsNarrativeDetails",
      "http://www.westport.com/role/LiquidityandGoingConcernDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Net proceeds from sale",
        "label": "Disposal Group, Including Discontinued Operation, Consideration",
        "documentation": "Amount of consideration received or receivable for the disposal of assets and liabilities, including discontinued operation."
       }
      }
     },
     "auth_ref": []
    },
    "wprt_DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrow": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrow",
     "crdr": "debit",
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Consideration held in escrow",
        "label": "Disposal Group, Including Discontinued Operation, Consideration Held In Escrow",
        "documentation": "Disposal Group, Including Discontinued Operation, Consideration Held In Escrow"
       }
      }
     },
     "auth_ref": []
    },
    "wprt_DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrowNumberOfTranches": {
     "xbrltype": "integerItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrowNumberOfTranches",
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Number of tranches for consideration held in escrow",
        "label": "Disposal Group, Including Discontinued Operation, Consideration Held In Escrow, Number Of Tranches",
        "documentation": "Disposal Group, Including Discontinued Operation, Consideration Held In Escrow, Number Of Tranches"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cost of revenue",
        "label": "Disposal Group, Including Discontinued Operation, Costs of Goods Sold",
        "documentation": "Amount of costs of goods sold attributable to disposal group, including, but not limited to, discontinued operation."
       }
      }
     },
     "auth_ref": [
      "r65",
      "r197"
     ]
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationDeferredTaxAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DisposalGroupIncludingDiscontinuedOperationDeferredTaxAssets",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Deferred income tax assets",
        "label": "Disposal Group, Including Discontinued Operation, Deferred Tax Assets",
        "documentation": "Amount classified as deferred tax assets attributable to disposal group held for sale or disposed of."
       }
      }
     },
     "auth_ref": [
      "r1",
      "r53",
      "r67",
      "r118"
     ]
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationDeferredTaxLiabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DisposalGroupIncludingDiscontinuedOperationDeferredTaxLiabilities",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Deferred income tax liabilities",
        "label": "Disposal Group, Including Discontinued Operation, Deferred Tax Liabilities",
        "documentation": "Amount classified as deferred tax liabilities attributable to disposal group held for sale or disposed of."
       }
      }
     },
     "auth_ref": [
      "r1",
      "r53",
      "r67",
      "r118"
     ]
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Depreciation and amortization",
        "label": "Disposal Group, Including Discontinued Operation, Depreciation and Amortization",
        "documentation": "Amount of depreciation and amortization expense attributable to disposal group, including, but not limited to, discontinued operation."
       }
      }
     },
     "auth_ref": [
      "r65"
     ]
    },
    "wprt_DisposalGroupIncludingDiscontinuedOperationEarnoutsMaximum": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "DisposalGroupIncludingDiscontinuedOperationEarnoutsMaximum",
     "crdr": "debit",
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Maximum potential earnouts",
        "label": "Disposal Group, Including Discontinued Operation, Earnouts, Maximum",
        "documentation": "Disposal Group, Including Discontinued Operation, Earnouts, Maximum"
       }
      }
     },
     "auth_ref": []
    },
    "wprt_DisposalGroupIncludingDiscontinuedOperationForeignExchangeGainLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "DisposalGroupIncludingDiscontinuedOperationForeignExchangeGainLoss",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense",
       "weight": -1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedTerseLabel": "Foreign exchange loss",
        "label": "Disposal Group, Including Discontinued Operation, Foreign Exchange Gain (Loss)",
        "documentation": "Disposal Group, Including Discontinued Operation, Foreign Exchange Gain (Loss)"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationGeneralAndAdministrativeExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DisposalGroupIncludingDiscontinuedOperationGeneralAndAdministrativeExpense",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "General and administrative",
        "label": "Disposal Group, Including Discontinued Operation, General and Administrative Expense",
        "documentation": "Amount of general and administrative expense attributable to disposal group, including, but not limited to, discontinued operation."
       }
      }
     },
     "auth_ref": [
      "r65"
     ]
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationGoodwillNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DisposalGroupIncludingDiscontinuedOperationGoodwillNoncurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent",
       "weight": 1.0,
       "order": 6.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Goodwill",
        "label": "Disposal Group, Including Discontinued Operation, Goodwill, Noncurrent",
        "documentation": "Amount classified as goodwill attributable to disposal group held for sale or disposed of, expected to be disposed of after one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r1",
      "r3",
      "r53",
      "r67",
      "r118"
     ]
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Gross profit",
        "label": "Disposal Group, Including Discontinued Operation, Gross Profit (Loss)",
        "documentation": "Amount of gross profit attributable to disposal group, including, but not limited to, discontinued operation."
       }
      }
     },
     "auth_ref": [
      "r65",
      "r197"
     ]
    },
    "wprt_DisposalGroupIncludingDiscontinuedOperationImpairmentOfLongLivedAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "DisposalGroupIncludingDiscontinuedOperationImpairmentOfLongLivedAssets",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax",
       "weight": -1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedTerseLabel": "Impairment of long-lived assets",
        "label": "Disposal Group, Including Discontinued Operation, Impairment Of Long-Lived Assets",
        "documentation": "Disposal Group, Including Discontinued Operation, Impairment Of Long-Lived Assets"
       }
      }
     },
     "auth_ref": []
    },
    "wprt_DisposalGroupIncludingDiscontinuedOperationIncomeLossFromEquityMethodInvestments": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "DisposalGroupIncludingDiscontinuedOperationIncomeLossFromEquityMethodInvestments",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Income from investment accounted for by the equity method",
        "label": "Disposal Group, Including Discontinued Operation, Income (Loss) From Equity Method Investments",
        "documentation": "Disposal Group, Including Discontinued Operation, Income (Loss) From Equity Method Investments"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Intangible assets",
        "label": "Disposal Group, Including Discontinued Operation, Intangible Assets, Noncurrent",
        "documentation": "Amount classified as intangible assets, excluding goodwill, attributable to disposal group held for sale or disposed of, expected to be disposed of beyond one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r1",
      "r3",
      "r53",
      "r67",
      "r118"
     ]
    },
    "wprt_DisposalGroupIncludingDiscontinuedOperationInterestAndOtherIncomeExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "DisposalGroupIncludingDiscontinuedOperationInterestAndOtherIncomeExpense",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax",
       "weight": 1.0,
       "order": 6.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Interest and other income (loss), net of bank charges",
        "label": "Disposal Group, Including Discontinued Operation, Interest And Other Income (Expense)",
        "documentation": "Disposal Group, Including Discontinued Operation, Interest And Other Income (Expense)"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationInterestExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DisposalGroupIncludingDiscontinuedOperationInterestExpense",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax",
       "weight": -1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedTerseLabel": "Interest on long-term debt",
        "label": "Disposal Group, Including Discontinued Operation, Interest Expense",
        "documentation": "Amount of interest expense attributable to disposal group, including, but not limited to, discontinued operation."
       }
      }
     },
     "auth_ref": [
      "r24",
      "r25",
      "r27",
      "r65"
     ]
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationInventoryCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DisposalGroupIncludingDiscontinuedOperationInventoryCurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Inventories",
        "label": "Disposal Group, Including Discontinued Operation, Inventory, Current",
        "documentation": "Amount classified as inventory attributable to disposal group, expected to be disposed of within one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r1",
      "r53",
      "r67",
      "r116",
      "r118"
     ]
    },
    "wprt_DisposalGroupIncludingDiscontinuedOperationInvestmentsNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "DisposalGroupIncludingDiscontinuedOperationInvestmentsNoncurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Long-term investments",
        "label": "Disposal Group, Including Discontinued Operation, Investments, Noncurrent",
        "documentation": "Disposal Group, Including Discontinued Operation, Investments, Noncurrent"
       }
      }
     },
     "auth_ref": []
    },
    "wprt_DisposalGroupIncludingDiscontinuedOperationLongTermDebtCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "DisposalGroupIncludingDiscontinuedOperationLongTermDebtCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Current portion of long-term debt",
        "label": "Disposal Group, Including Discontinued Operation, Long-Term Debt, Current",
        "documentation": "Disposal Group, Including Discontinued Operation, Long-Term Debt, Current"
       }
      }
     },
     "auth_ref": []
    },
    "wprt_DisposalGroupIncludingDiscontinuedOperationLongTermDebtNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "DisposalGroupIncludingDiscontinuedOperationLongTermDebtNoncurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Long-term debt",
        "label": "Disposal Group, Including Discontinued Operation, Long-Term Debt, Noncurrent",
        "documentation": "Disposal Group, Including Discontinued Operation, Long-Term Debt, Noncurrent"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DisposalGroupIncludingDiscontinuedOperationOperatingExpense",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Operating expenses",
        "label": "Disposal Group, Including Discontinued Operation, Operating Expense",
        "documentation": "Amount of operating expense attributable to disposal group, including, but not limited to, discontinued operation."
       }
      }
     },
     "auth_ref": [
      "r65"
     ]
    },
    "wprt_DisposalGroupIncludingDiscontinuedOperationOperatingExpensesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "DisposalGroupIncludingDiscontinuedOperationOperatingExpensesAbstract",
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Operating expenses:",
        "label": "Disposal Group, Including Discontinued Operation, Operating Expenses [Abstract]",
        "documentation": "Disposal Group, Including Discontinued Operation, Operating Expenses"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Income from discontinued operations",
        "label": "Disposal Group, Including Discontinued Operation, Operating Income (Loss)",
        "documentation": "Amount of operating income (loss) attributable to disposal group, including, but not limited to, discontinued operation."
       }
      }
     },
     "auth_ref": [
      "r65"
     ]
    },
    "wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Current portion of operating lease liabilities",
        "label": "Disposal Group, Including Discontinued Operation, Operating Lease, Liability, Current",
        "documentation": "Disposal Group, Including Discontinued Operation, Operating Lease, Liability, Current"
       }
      }
     },
     "auth_ref": []
    },
    "wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Long-term operating lease liabilities",
        "label": "Disposal Group, Including Discontinued Operation, Operating Lease, Liability, Noncurrent",
        "documentation": "Disposal Group, Including Discontinued Operation, Operating Lease, Liability, Noncurrent"
       }
      }
     },
     "auth_ref": []
    },
    "wprt_DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAssetNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAssetNoncurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Operating lease right-of-use asset",
        "label": "Disposal Group, Including Discontinued Operation, Operating Lease, Right-Of-Use Asset, Noncurrent",
        "documentation": "Disposal Group, Including Discontinued Operation, Operating Lease, Right-Of-Use Asset, Noncurrent"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent",
       "weight": 1.0,
       "order": 7.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other long-term assets",
        "label": "Disposal Group, Including Discontinued Operation, Other Assets, Noncurrent",
        "documentation": "Amount classified as other assets attributable to disposal group held for sale or disposed of, expected to be disposed of after one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r1",
      "r3",
      "r53",
      "r67",
      "r118"
     ]
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentLiabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentLiabilities",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other long-term liabilities",
        "label": "Disposal Group, Including Discontinued Operation, Other Liabilities, Noncurrent",
        "documentation": "Amount classified as other liabilities attributable to disposal group held for sale or disposed of, expected to be disposed of beyond one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r1",
      "r3",
      "r53",
      "r67",
      "r118"
     ]
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Prepaid expenses",
        "label": "Disposal Group, Including Discontinued Operation, Prepaid and Other Assets, Current",
        "documentation": "Amount classified as prepaid and other assets attributable to disposal group held for sale or disposed of, expected to be disposed of within one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r1",
      "r53",
      "r67",
      "r116",
      "r118"
     ]
    },
    "wprt_DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Current portion of warranty liabilities",
        "label": "Disposal Group, Including Discontinued Operation, Product Warranty Accrual, Current",
        "documentation": "Disposal Group, Including Discontinued Operation, Product Warranty Accrual, Current"
       }
      }
     },
     "auth_ref": []
    },
    "wprt_DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualNoncurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Warranty liabilities",
        "label": "Disposal Group, Including Discontinued Operation, Product Warranty Accrual, Noncurrent",
        "documentation": "Disposal Group, Including Discontinued Operation, Product Warranty Accrual, Noncurrent"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Property, plant, and equipment",
        "label": "Disposal Group, Including Discontinued Operation, Property, Plant and Equipment, Noncurrent",
        "documentation": "Amount classified as property, plant and equipment attributable to disposal group held for sale or disposed of, expected to be disposed of after one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r1",
      "r3",
      "r53",
      "r67",
      "r118"
     ]
    },
    "wprt_DisposalGroupIncludingDiscontinuedOperationResearchAndDevelopmentExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "DisposalGroupIncludingDiscontinuedOperationResearchAndDevelopmentExpense",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Research and development",
        "label": "Disposal Group, Including Discontinued Operation, Research And Development Expense",
        "documentation": "Disposal Group, Including Discontinued Operation, Research And Development Expense"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationRevenue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DisposalGroupIncludingDiscontinuedOperationRevenue",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Revenue",
        "label": "Disposal Group, Including Discontinued Operation, Revenue",
        "documentation": "Amount of revenue attributable to disposal group, including, but not limited to, discontinued operation."
       }
      }
     },
     "auth_ref": [
      "r65",
      "r197"
     ]
    },
    "wprt_DisposalGroupIncludingDiscontinuedOperationSellingAndMarketingExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "DisposalGroupIncludingDiscontinuedOperationSellingAndMarketingExpense",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_DisposalGroupIncludingDiscontinuedOperationOperatingExpense",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Sales and marketing",
        "label": "Disposal Group, Including Discontinued Operation, Selling And Marketing Expense",
        "documentation": "Disposal Group, Including Discontinued Operation, Selling And Marketing Expense"
       }
      }
     },
     "auth_ref": []
    },
    "wprt_DisposalGroupIncludingDiscontinuedOperationValuationAllowance": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "DisposalGroupIncludingDiscontinuedOperationValuationAllowance",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation",
       "weight": -1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedTerseLabel": "Valuation allowance from classifying the discontinued operations as held-for-sale",
        "label": "Disposal Group, Including Discontinued Operation, Valuation Allowance",
        "documentation": "Disposal Group, Including Discontinued Operation, Valuation Allowance"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock",
     "presentation": [
      "http://www.westport.com/role/Heldforsaledisposalgroupanddiscontinuedoperations"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Held-for-sale disposal group and discontinued operations",
        "label": "Disposal Groups, Including Discontinued Operations, Disclosure [Text Block]",
        "documentation": "The entire disclosure related to a disposal group. Includes, but is not limited to, a discontinued operation, disposal classified as held-for-sale or disposed of by means other than sale or disposal of an individually significant component."
       }
      }
     },
     "auth_ref": [
      "r52",
      "r115"
     ]
    },
    "us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "DisposalGroupsIncludingDiscontinuedOperationsNameDomain",
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails",
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsNarrativeDetails",
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails",
      "http://www.westport.com/role/LiquidityandGoingConcernDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Disposal Group Name [Domain]",
        "label": "Disposal Group Name [Domain]",
        "documentation": "Name of disposal group."
       }
      }
     },
     "auth_ref": [
      "r344",
      "r345",
      "r819",
      "r820"
     ]
    },
    "dei_DocumentFiscalPeriodFocus": {
     "xbrltype": "fiscalPeriodItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DocumentFiscalPeriodFocus",
     "presentation": [
      "http://www.westport.com/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Document Fiscal Period Focus",
        "label": "Document Fiscal Period Focus",
        "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."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentFiscalYearFocus": {
     "xbrltype": "gYearItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DocumentFiscalYearFocus",
     "presentation": [
      "http://www.westport.com/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Document Fiscal Year Focus",
        "label": "Document Fiscal Year Focus",
        "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."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentPeriodEndDate": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DocumentPeriodEndDate",
     "presentation": [
      "http://www.westport.com/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Document Period End Date",
        "label": "Document Period End Date",
        "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."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentType": {
     "xbrltype": "submissionTypeItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DocumentType",
     "presentation": [
      "http://www.westport.com/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Document Type",
        "label": "Document Type",
        "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'."
       }
      }
     },
     "auth_ref": []
    },
    "wprt_EDCLoanMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "EDCLoanMember",
     "presentation": [
      "http://www.westport.com/role/LongtermdebtNarrativeDetails",
      "http://www.westport.com/role/LongtermdebtTermLoanFacilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "EDC",
        "label": "EDC Loan [Member]",
        "documentation": "EDC Loan [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "currency_EUR": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/currency/2025",
     "localname": "EUR",
     "presentation": [
      "http://www.westport.com/role/BasisofpreparationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Euro",
        "label": "Euro Member Countries, Euro"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EarningsPerShareBasic": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "EarningsPerShareBasic",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Net income (loss) per share - basic (in dollars per share)",
        "label": "Earnings Per Share, Basic",
        "documentation": "The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period."
       }
      }
     },
     "auth_ref": [
      "r192",
      "r222",
      "r246",
      "r247",
      "r248",
      "r249",
      "r250",
      "r251",
      "r252",
      "r253",
      "r259",
      "r261",
      "r264",
      "r265",
      "r266",
      "r267",
      "r387",
      "r444",
      "r465",
      "r470",
      "r493",
      "r494",
      "r584",
      "r609",
      "r795"
     ]
    },
    "us-gaap_EarningsPerShareBasicAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "EarningsPerShareBasicAbstract",
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Net income (loss) per share:",
        "label": "Earnings Per Share, Basic [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EarningsPerShareDiluted": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "EarningsPerShareDiluted",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Net income (loss) per share - diluted (in dollars per share)",
        "label": "Earnings Per Share, Diluted",
        "documentation": "The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period."
       }
      }
     },
     "auth_ref": [
      "r192",
      "r222",
      "r246",
      "r247",
      "r248",
      "r249",
      "r250",
      "r251",
      "r252",
      "r253",
      "r261",
      "r264",
      "r265",
      "r266",
      "r267",
      "r387",
      "r444",
      "r465",
      "r470",
      "r493",
      "r494",
      "r584",
      "r609",
      "r795"
     ]
    },
    "us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0,
       "order": 7.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Effect of foreign exchange on cash and cash equivalents",
        "label": "Effect of Exchange Rate on Cash, Cash Equivalent, Restricted Cash, and Restricted Cash Equivalent, Continuing Operation",
        "documentation": "Amount of increase (decrease) from effect of exchange rate change on cash and cash equivalent, and cash and cash equivalent restricted to withdrawal or usage; held in foreign currency; attributable to continuing operation. Cash includes, but is not limited to, currency on hand, demand deposit with financial institution, and account with general characteristic of demand deposit. Cash equivalent includes, but is not limited to, short-term, highly liquid investment that is both readily convertible to known amount of cash and so near maturity that it presents insignificant risk of change in value because of change in interest rate."
       }
      }
     },
     "auth_ref": [
      "r508"
     ]
    },
    "us-gaap_EmployeeRelatedLiabilitiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "EmployeeRelatedLiabilitiesCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/AccountspayableandaccruedliabilitiesDetails": {
       "parentTag": "us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/AccountspayableandaccruedliabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accrued payroll",
        "label": "Employee-related Liabilities, Current",
        "documentation": "Total of the carrying values as of the balance sheet date of obligations incurred through that date and payable for obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)."
       }
      }
     },
     "auth_ref": [
      "r75"
     ]
    },
    "us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems",
     "presentation": [
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansStockbasedcompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Share-based Payment Arrangement, Expensed and Capitalized, Amount [Line Items]",
        "label": "Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Line Items]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r958"
     ]
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized",
     "crdr": "debit",
     "presentation": [
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Compensation cost not yet recognized",
        "label": "Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount",
        "documentation": "Amount of cost not yet recognized for nonvested award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r442"
     ]
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1",
     "presentation": [
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Compensation cost not yet recognized, period for recognition (in years)",
        "label": "Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition",
        "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."
       }
      }
     },
     "auth_ref": [
      "r442"
     ]
    },
    "dei_EntityCentralIndexKey": {
     "xbrltype": "centralIndexKeyItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityCentralIndexKey",
     "presentation": [
      "http://www.westport.com/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Central Index Key",
        "label": "Entity Central Index Key",
        "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK."
       }
      }
     },
     "auth_ref": [
      "r862"
     ]
    },
    "dei_EntityRegistrantName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityRegistrantName",
     "presentation": [
      "http://www.westport.com/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Registrant Name",
        "label": "Entity Registrant Name",
        "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC."
       }
      }
     },
     "auth_ref": [
      "r862"
     ]
    },
    "us-gaap_EquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "EquityAbstract",
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Share capital (note 13):",
        "label": "Equity [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EquityComponentDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "EquityComponentDomain",
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofShareholdersEquityunaudited",
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Equity Component [Domain]",
        "label": "Equity Component [Domain]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r16",
      "r189",
      "r191",
      "r192",
      "r218",
      "r219",
      "r220",
      "r238",
      "r239",
      "r240",
      "r244",
      "r252",
      "r254",
      "r256",
      "r269",
      "r320",
      "r323",
      "r341",
      "r386",
      "r396",
      "r444",
      "r455",
      "r456",
      "r460",
      "r461",
      "r462",
      "r466",
      "r469",
      "r470",
      "r480",
      "r481",
      "r482",
      "r483",
      "r484",
      "r486",
      "r487",
      "r488",
      "r489",
      "r490",
      "r492",
      "r509",
      "r510",
      "r511",
      "r512",
      "r513",
      "r514",
      "r519",
      "r521",
      "r532",
      "r606",
      "r624",
      "r625",
      "r626",
      "r639",
      "r697"
     ]
    },
    "srt_EquityMethodInvesteeNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2025",
     "localname": "EquityMethodInvesteeNameDomain",
     "presentation": [
      "http://www.westport.com/role/AccountsreceivableNarrativeDetails",
      "http://www.westport.com/role/CompanyorganizationandoperationsDetails",
      "http://www.westport.com/role/LongterminvestmentsScheduleofInvestmentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Investment, Name [Domain]",
        "label": "Investment, Name [Domain]",
        "documentation": "Name of investment including named security. Excludes entity that is consolidated."
       }
      }
     },
     "auth_ref": [
      "r314",
      "r315",
      "r317",
      "r459",
      "r499",
      "r864",
      "r865",
      "r866",
      "r960",
      "r961",
      "r962",
      "r963"
     ]
    },
    "us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "EquityMethodInvestmentNonconsolidatedInvesteeAxis",
     "presentation": [
      "http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails",
      "http://www.westport.com/role/LongterminvestmentsIncomeStatementDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Equity Method Investment, Nonconsolidated Investee [Axis]",
        "label": "Equity Method Investment, Nonconsolidated Investee [Axis]",
        "documentation": "Information by nonconsolidated equity method investee. Excludes information consolidated by reporting entity."
       }
      }
     },
     "auth_ref": [
      "r197",
      "r231",
      "r234",
      "r318",
      "r499",
      "r545",
      "r546",
      "r552",
      "r560",
      "r567",
      "r568",
      "r579",
      "r581",
      "r836",
      "r837",
      "r838",
      "r839",
      "r840",
      "r841",
      "r842",
      "r843",
      "r844",
      "r845",
      "r846",
      "r847"
     ]
    },
    "us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "EquityMethodInvestmentNonconsolidatedInvesteeDomain",
     "presentation": [
      "http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails",
      "http://www.westport.com/role/LongterminvestmentsIncomeStatementDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Equity Method Investment, Nonconsolidated Investee [Domain]",
        "label": "Equity Method Investment, Nonconsolidated Investee [Domain]",
        "documentation": "Nonconsolidated equity method investee. Excludes information consolidated by reporting entity."
       }
      }
     },
     "auth_ref": [
      "r197",
      "r231",
      "r234",
      "r318",
      "r499",
      "r545",
      "r546",
      "r552",
      "r560",
      "r567",
      "r568",
      "r579",
      "r581",
      "r836",
      "r837",
      "r838",
      "r839",
      "r840",
      "r841",
      "r842",
      "r843",
      "r844",
      "r845",
      "r846",
      "r847"
     ]
    },
    "us-gaap_EquityMethodInvestmentOwnershipPercentage": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "EquityMethodInvestmentOwnershipPercentage",
     "presentation": [
      "http://www.westport.com/role/CompanyorganizationandoperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Equity method investment, ownership percentage",
        "label": "Equity Method Investment, Ownership Percentage",
        "documentation": "The percentage of ownership of common stock or equity participation in the investee accounted for under the equity method of accounting."
       }
      }
     },
     "auth_ref": [
      "r314",
      "r499"
     ]
    },
    "us-gaap_EquityMethodInvestmentRealizedGainLossOnDisposal": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "EquityMethodInvestmentRealizedGainLossOnDisposal",
     "crdr": "credit",
     "presentation": [
      "http://www.westport.com/role/SegmentInformationReconciliationofSegmentEBITDAtoLossbeforeincometaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedTerseLabel": "Loss on sale of investment (note 8)",
        "label": "Equity Method Investment, Realized Gain (Loss) on Disposal",
        "documentation": "Amount of gain (loss) on sale or disposal of an equity method investment."
       }
      }
     },
     "auth_ref": [
      "r882",
      "r883",
      "r887"
     ]
    },
    "us-gaap_EquityMethodInvestmentsDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "EquityMethodInvestmentsDisclosureTextBlock",
     "presentation": [
      "http://www.westport.com/role/Longterminvestments"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Long-term investments",
        "label": "Equity Method Investments and Joint Ventures Disclosure [Text Block]",
        "documentation": "The entire disclosure for equity method investments and joint ventures. Equity method investments are investments that give the investor the ability to exercise significant influence over the operating and financial policies of an investee. Joint ventures are entities owned and operated by a small group of businesses as a separate and specific business or project for the mutual benefit of the members of the group."
       }
      }
     },
     "auth_ref": [
      "r159",
      "r316",
      "r319",
      "r866"
     ]
    },
    "us-gaap_EquityMethodInvestmentsTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "EquityMethodInvestmentsTextBlock",
     "presentation": [
      "http://www.westport.com/role/LongterminvestmentsTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Long-Term Investments",
        "label": "Equity Method Investments [Table Text Block]",
        "documentation": "Tabular disclosure of equity method investments including, but not limited to, name of each investee or group of investments, percentage ownership, difference between recorded amount of an investment and the value of the underlying equity in the net assets, and summarized financial information."
       }
      }
     },
     "auth_ref": [
      "r313"
     ]
    },
    "wprt_EquitySecuritiesOtherOneMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "EquitySecuritiesOtherOneMember",
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofShareholdersEquityunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Other equity instruments",
        "label": "Equity Securities Other One [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "srt_EuropeMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2025",
     "localname": "EuropeMember",
     "presentation": [
      "http://www.westport.com/role/SegmentinformationPercentofrevenuebygeographicallocationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Europe",
        "label": "Europe [Member]",
        "documentation": "Continent of Europe."
       }
      }
     },
     "auth_ref": [
      "r870",
      "r871",
      "r872",
      "r873",
      "r1025",
      "r1026",
      "r1027",
      "r1028"
     ]
    },
    "us-gaap_FinanceLeaseInterestExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "FinanceLeaseInterestExpense",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesComponentsofLeaseCostDetails": {
       "parentTag": "us-gaap_LeaseCost",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesComponentsofLeaseCostDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Interest",
        "label": "Finance Lease, Interest Expense",
        "documentation": "Amount of interest expense on finance lease liability."
       }
      }
     },
     "auth_ref": [
      "r524",
      "r526",
      "r834"
     ]
    },
    "us-gaap_FinanceLeaseRightOfUseAssetAmortization": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "FinanceLeaseRightOfUseAssetAmortization",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesComponentsofLeaseCostDetails": {
       "parentTag": "us-gaap_LeaseCost",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesComponentsofLeaseCostDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Amortization of right-of-use assets",
        "label": "Finance Lease, Right-of-Use Asset, Amortization",
        "documentation": "Amount of amortization expense attributable to right-of-use asset from finance lease."
       }
      }
     },
     "auth_ref": [
      "r524",
      "r526",
      "r834"
     ]
    },
    "wprt_FinancialInstrumentsDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "FinancialInstrumentsDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Financial Instruments Disclosure [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FinancialInstrumentsDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "FinancialInstrumentsDisclosureTextBlock",
     "presentation": [
      "http://www.westport.com/role/Financialinstruments"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Financial instruments",
        "label": "Financial Instruments Disclosure [Text Block]",
        "documentation": "The entire disclosure for financial instruments. This disclosure includes, but is not limited to, fair value measurements of short and long term marketable securities, international currencies forward contracts, and auction rate securities. Financial instruments may include hedging and non-hedging currency exchange instruments, derivatives, securitizations and securities available for sale at fair value. Also included are investment results, realized and unrealized gains and losses as well as impairments and risk management disclosures."
       }
      }
     },
     "auth_ref": [
      "r498"
     ]
    },
    "us-gaap_ForeignCurrencyExchangeRateTranslation1": {
     "xbrltype": "pureItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ForeignCurrencyExchangeRateTranslation1",
     "presentation": [
      "http://www.westport.com/role/BasisofpreparationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Foreign current exchange rate at period end",
        "label": "Foreign Currency Exchange Rate, Translation",
        "documentation": "Foreign exchange rate used to translate amounts denominated in functional currency to reporting currency."
       }
      }
     },
     "auth_ref": [
      "r515",
      "r516"
     ]
    },
    "us-gaap_ForeignCurrencyTransactionGainLossBeforeTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ForeignCurrencyTransactionGainLossBeforeTax",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited": {
       "parentTag": "us-gaap_CostsAndExpenses",
       "weight": -1.0,
       "order": 4.0
      },
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "weight": -1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited",
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited",
      "http://www.westport.com/role/LongterminvestmentsIncomeStatementDetails",
      "http://www.westport.com/role/SegmentInformationReconciliationofSegmentEBITDAtoLossbeforeincometaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Foreign exchange (gain) loss",
        "negatedTerseLabel": "Unrealized foreign exchange loss",
        "negatedNetLabel": "Foreign exchange gain",
        "label": "Gain (Loss), Foreign Currency Transaction, before Tax",
        "documentation": "Amount, before tax, of realized and unrealized gain (loss) from foreign currency transaction."
       }
      }
     },
     "auth_ref": [
      "r224",
      "r504",
      "r505",
      "r506",
      "r507",
      "r694"
     ]
    },
    "us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock",
     "presentation": [
      "http://www.westport.com/role/BasisofpreparationPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Foreign currency translation",
        "label": "Foreign Currency Transactions and Translations Policy [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for (1) transactions denominated in a currency other than the reporting enterprise's functional currency, (2) translating foreign currency financial statements that are incorporated into the financial statements of the reporting enterprise by consolidation, combination, or the equity method of accounting, and (3) remeasurement of the financial statements of a foreign reporting enterprise in a hyperinflationary economy."
       }
      }
     },
     "auth_ref": [
      "r503"
     ]
    },
    "us-gaap_FurnitureAndFixturesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "FurnitureAndFixturesMember",
     "presentation": [
      "http://www.westport.com/role/PropertyplantandequipmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Furniture and fixtures",
        "label": "Furniture and Fixtures [Member]",
        "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."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_GeneralAndAdministrativeExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "GeneralAndAdministrativeExpense",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited": {
       "parentTag": "us-gaap_CostsAndExpenses",
       "weight": 1.0,
       "order": 2.0
      },
      "http://www.westport.com/role/SegmentinformationFinancialinformationbybusinesssegmentDetails": {
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited",
      "http://www.westport.com/role/LongterminvestmentsIncomeStatementDetails",
      "http://www.westport.com/role/SegmentinformationFinancialinformationbybusinesssegmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "General and administrative",
        "label": "General and Administrative Expense",
        "documentation": "The aggregate total of expenses of managing and administering the affairs of an entity, including affiliates of the reporting entity, which are not directly or indirectly associated with the manufacture, sale or creation of a product or product line."
       }
      }
     },
     "auth_ref": [
      "r106",
      "r676"
     ]
    },
    "us-gaap_GeneralAndAdministrativeExpenseMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "GeneralAndAdministrativeExpenseMember",
     "presentation": [
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansStockbasedcompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "General and administrative",
        "label": "General and Administrative Expense [Member]",
        "documentation": "Primary financial statement caption encompassing general and administrative expense."
       }
      }
     },
     "auth_ref": [
      "r106"
     ]
    },
    "us-gaap_GeographicConcentrationRiskMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "GeographicConcentrationRiskMember",
     "presentation": [
      "http://www.westport.com/role/SegmentinformationPercentofrevenuebygeographicallocationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Geographic Concentration Risk",
        "label": "Geographic Concentration Risk [Member]",
        "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)."
       }
      }
     },
     "auth_ref": [
      "r773",
      "r905"
     ]
    },
    "us-gaap_Goodwill": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "Goodwill",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Goodwill",
        "label": "Goodwill",
        "documentation": "Amount, after accumulated impairment loss, of asset representing future economic benefit arising from other asset acquired in business combination or from joint venture formation or both, that is not individually identified and separately recognized."
       }
      }
     },
     "auth_ref": [
      "r204",
      "r329",
      "r582",
      "r806",
      "r810",
      "r823",
      "r824",
      "r825",
      "r826",
      "r830",
      "r835",
      "r916",
      "r917",
      "r966"
     ]
    },
    "us-gaap_GrossProfit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "GrossProfit",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited": {
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": 1.0,
       "order": 1.0
      },
      "http://www.westport.com/role/LongterminvestmentsIncomeStatementDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited",
      "http://www.westport.com/role/LongterminvestmentsIncomeStatementDetails",
      "http://www.westport.com/role/SegmentinformationFinancialinformationbybusinesssegmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Gross profit",
        "label": "Gross Profit",
        "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity."
       }
      }
     },
     "auth_ref": [
      "r97",
      "r104",
      "r149",
      "r231",
      "r233",
      "r234",
      "r318",
      "r353",
      "r354",
      "r356",
      "r357",
      "r358",
      "r359",
      "r360",
      "r362",
      "r363",
      "r499",
      "r800",
      "r805",
      "r900",
      "r907",
      "r909",
      "r910",
      "r911",
      "r930"
     ]
    },
    "wprt_HeavyDutyOEMMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "HeavyDutyOEMMember",
     "presentation": [
      "http://www.westport.com/role/SegmentInformationTotalassetallocationDetails",
      "http://www.westport.com/role/SegmentinformationAssetsDetails",
      "http://www.westport.com/role/SegmentinformationFinancialinformationbybusinesssegmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Heavy-Duty OEM",
        "label": "Heavy-Duty OEM [Member]",
        "documentation": "Heavy-Duty OEM"
       }
      }
     },
     "auth_ref": []
    },
    "wprt_HeldForSaleDisposalGroupAndDiscontinuedOperationsPolicyPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "HeldForSaleDisposalGroupAndDiscontinuedOperationsPolicyPolicyTextBlock",
     "presentation": [
      "http://www.westport.com/role/BasisofpreparationPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Held-for-sale disposal group and discontinued operations",
        "label": "Held-For-Sale Disposal Group And Discontinued Operations, Policy [Policy Text Block]",
        "documentation": "Held-For-Sale Disposal Group And Discontinued Operations, Policy"
       }
      }
     },
     "auth_ref": []
    },
    "wprt_HighPressureControlsSystemsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "HighPressureControlsSystemsMember",
     "presentation": [
      "http://www.westport.com/role/SegmentInformationTotalassetallocationDetails",
      "http://www.westport.com/role/SegmentinformationAssetsDetails",
      "http://www.westport.com/role/SegmentinformationFinancialinformationbybusinesssegmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "High-Pressure Controls &amp; Systems",
        "label": "High-Pressure Controls &amp; Systems [Member]",
        "documentation": "High-Pressure Controls &amp; Systems"
       }
      }
     },
     "auth_ref": []
    },
    "wprt_HoldbackReceivablesNetCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "HoldbackReceivablesNetCurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/AccountsreceivableScheduleofAccountsReceivableDetails": {
       "parentTag": "us-gaap_AccountsReceivableNetCurrent",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/AccountsreceivableNarrativeDetails",
      "http://www.westport.com/role/AccountsreceivableScheduleofAccountsReceivableDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Holdback receivable",
        "label": "Holdback Receivables, Net, Current",
        "documentation": "Holdback Receivables, Net, Current"
       }
      }
     },
     "auth_ref": []
    },
    "wprt_HoldbackTerm": {
     "xbrltype": "durationItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "HoldbackTerm",
     "presentation": [
      "http://www.westport.com/role/AccountsreceivableNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Purchase agreement holdback term (in years)",
        "label": "Holdback, Term",
        "documentation": "Holdback, Term"
       }
      }
     },
     "auth_ref": []
    },
    "currency_INR": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/currency/2025",
     "localname": "INR",
     "presentation": [
      "http://www.westport.com/role/BasisofpreparationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Indian Rupee",
        "label": "India, Rupees"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncomeLossFromContinuingOperations": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "IncomeLossFromContinuingOperations",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited": {
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": 1.0,
       "order": 1.0
      },
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited",
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Net income (loss) from continuing operations",
        "terseLabel": "Net income (loss) from continuing operations",
        "label": "Income (Loss) from Continuing Operations, Net of Tax, Attributable to Parent",
        "documentation": "Amount after tax of income (loss) from continuing operations attributable to the parent."
       }
      }
     },
     "auth_ref": [
      "r49",
      "r100",
      "r113",
      "r192",
      "r248",
      "r249",
      "r250",
      "r251",
      "r252",
      "r263",
      "r266",
      "r470"
     ]
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited": {
       "parentTag": "us-gaap_IncomeLossFromContinuingOperations",
       "weight": 1.0,
       "order": 1.0
      },
      "http://www.westport.com/role/LongterminvestmentsIncomeStatementDetails": {
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited",
      "http://www.westport.com/role/LongterminvestmentsIncomeStatementDetails",
      "http://www.westport.com/role/SegmentInformationReconciliationofSegmentEBITDAtoLossbeforeincometaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Income (loss) before income taxes",
        "terseLabel": "Income (loss) before income taxes",
        "label": "Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest",
        "documentation": "Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest."
       }
      }
     },
     "auth_ref": [
      "r98",
      "r143",
      "r149",
      "r585",
      "r587",
      "r604",
      "r791",
      "r793",
      "r794",
      "r800",
      "r805",
      "r900",
      "r907",
      "r909",
      "r910",
      "r911"
     ]
    },
    "wprt_IncomeLossFromContinuingOperationsBeforeIncomeTaxesNoncontrollingInterestAdjustmentForRounding": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesNoncontrollingInterestAdjustmentForRounding",
     "crdr": "credit",
     "presentation": [
      "http://www.westport.com/role/SegmentInformationReconciliationofSegmentEBITDAtoLossbeforeincometaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Loss before income taxes in continuing operations",
        "label": "Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest, Adjustment for Rounding",
        "documentation": "Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest, Adjustment for Rounding"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncomeLossFromContinuingOperationsPerBasicShare": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "IncomeLossFromContinuingOperationsPerBasicShare",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited": {
       "parentTag": "us-gaap_EarningsPerShareBasic",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "From continuing operations - basic (in dollars per share)",
        "label": "Income (Loss) from Continuing Operations, Per Basic Share",
        "documentation": "The amount of net income (loss) from continuing operations per each share of common stock or unit outstanding during the reporting period."
       }
      }
     },
     "auth_ref": [
      "r100",
      "r144",
      "r192",
      "r222",
      "r243",
      "r246",
      "r247",
      "r248",
      "r249",
      "r250",
      "r251",
      "r252",
      "r261",
      "r264",
      "r265",
      "r387",
      "r465",
      "r470",
      "r494",
      "r584",
      "r989"
     ]
    },
    "us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "IncomeLossFromContinuingOperationsPerDilutedShare",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited": {
       "parentTag": "us-gaap_EarningsPerShareDiluted",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "From continuing operations - diluted (in dollars per share)",
        "label": "Income (Loss) from Continuing Operations, Per Diluted Share",
        "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."
       }
      }
     },
     "auth_ref": [
      "r100",
      "r192",
      "r222",
      "r243",
      "r246",
      "r247",
      "r248",
      "r249",
      "r250",
      "r251",
      "r252",
      "r261",
      "r264",
      "r265",
      "r266",
      "r470",
      "r494",
      "r584",
      "r989"
     ]
    },
    "us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited": {
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": 1.0,
       "order": 2.0
      },
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited",
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Net income (loss) from discontinued operations (note 5)",
        "totalLabel": "Net income (loss) from discontinued operations",
        "label": "Income (Loss) from Discontinued Operations, Net of Tax, Attributable to Parent",
        "documentation": "Amount after tax of income (loss) from a discontinued operation attributable to the parent. Includes, but is not limited to, the income (loss) from operations during the phase-out period, gain (loss) on disposal, gain (loss) for reversal of write-down (write-down) to fair value, less cost to sell, and adjustments to a prior period gain (loss) on disposal."
       }
      }
     },
     "auth_ref": [
      "r54",
      "r55",
      "r56",
      "r57",
      "r58",
      "r64",
      "r69",
      "r130"
     ]
    },
    "us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited": {
       "parentTag": "us-gaap_EarningsPerShareBasic",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "From discontinued operations - basic (in dollars per share)",
        "label": "Income (Loss) from Discontinued Operations and Disposal of Discontinued Operations, Net of Tax, Per Basic Share",
        "documentation": "Per basic share amount, after tax, of income (loss) from the day-to-day business activities of the discontinued operation and gain (loss) from the disposal of the discontinued operation."
       }
      }
     },
     "auth_ref": [
      "r101",
      "r222",
      "r262",
      "r264",
      "r265",
      "r982",
      "r989"
     ]
    },
    "us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited": {
       "parentTag": "us-gaap_EarningsPerShareDiluted",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "From discontinued operations - diluted (in dollars per share)",
        "label": "Income (Loss) from Discontinued Operations and Disposal of Discontinued Operations, Net of Tax, Per Diluted Share",
        "documentation": "Per diluted share amount, after tax, of income (loss) from the day-to-day business activities of the discontinued operation and gain (loss) from the disposal of the discontinued operation."
       }
      }
     },
     "auth_ref": [
      "r131",
      "r262",
      "r264",
      "r265"
     ]
    },
    "us-gaap_IncomeLossFromEquityMethodInvestments": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "IncomeLossFromEquityMethodInvestments",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited": {
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0,
       "order": 2.0
      },
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "weight": -1.0,
       "order": 6.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited",
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited",
      "http://www.westport.com/role/LongterminvestmentsNarrativeDetails",
      "http://www.westport.com/role/SegmentinformationFinancialinformationbybusinesssegmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Loss from investments accounted for by the equity method",
        "negatedTerseLabel": "Loss from investments accounted for by the equity method",
        "verboseLabel": "Equity income (loss)",
        "label": "Income (Loss) from Equity Method Investments",
        "documentation": "Amount of income (loss) for proportionate share of equity method investee's income (loss)."
       }
      }
     },
     "auth_ref": [
      "r9",
      "r99",
      "r142",
      "r268",
      "r284",
      "r299",
      "r312",
      "r603"
     ]
    },
    "us-gaap_IncomeStatementAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "IncomeStatementAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Statement [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis",
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails",
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsNarrativeDetails",
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails",
      "http://www.westport.com/role/LiquidityandGoingConcernDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Disposal Group Name [Axis]",
        "label": "Disposal Group Name [Axis]",
        "documentation": "Information by name of disposal group."
       }
      }
     },
     "auth_ref": [
      "r344",
      "r345",
      "r819",
      "r820"
     ]
    },
    "us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems",
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails",
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsNarrativeDetails",
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [Line Items]",
        "label": "Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [Line Items]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r344",
      "r345"
     ]
    },
    "us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable",
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails",
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsNarrativeDetails",
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Disposal Groups, Including Discontinued Operations [Table]",
        "label": "Disposal Groups, Including Discontinued Operations [Table]",
        "documentation": "Disclosure of information about a disposal group. Includes, but is not limited to, a discontinued operation, disposal classified as held-for-sale or disposed of by means other than sale or disposal of an individually significant component."
       }
      }
     },
     "auth_ref": [
      "r13",
      "r21",
      "r26",
      "r53",
      "r59",
      "r60",
      "r61",
      "r62",
      "r63",
      "r68",
      "r70",
      "r71",
      "r119",
      "r344",
      "r345"
     ]
    },
    "us-gaap_IncomeStatementLocationAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "IncomeStatementLocationAxis",
     "presentation": [
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansStockbasedcompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Statement of Income Location, Balance [Axis]",
        "label": "Statement of Income Location, Balance [Axis]",
        "documentation": "Information by location in statement of income where disaggregated amount is reported."
       }
      }
     },
     "auth_ref": [
      "r342",
      "r346",
      "r347",
      "r475",
      "r476",
      "r477",
      "r478",
      "r495",
      "r496",
      "r497",
      "r500",
      "r501",
      "r502",
      "r622",
      "r623",
      "r681",
      "r784",
      "r785",
      "r823",
      "r825",
      "r828",
      "r829",
      "r831",
      "r832",
      "r964",
      "r965",
      "r991"
     ]
    },
    "us-gaap_IncomeStatementLocationDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "IncomeStatementLocationDomain",
     "presentation": [
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansStockbasedcompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Statement of Income Location, Balance [Domain]",
        "label": "Statement of Income Location, Balance [Domain]",
        "documentation": "Location in statement of income where disaggregated amount is reported."
       }
      }
     },
     "auth_ref": [
      "r346",
      "r347",
      "r475",
      "r476",
      "r477",
      "r478",
      "r495",
      "r496",
      "r497",
      "r500",
      "r501",
      "r502",
      "r622",
      "r623",
      "r681",
      "r784",
      "r785",
      "r823",
      "r825",
      "r828",
      "r829",
      "r831",
      "r832",
      "r964",
      "r965",
      "r991"
     ]
    },
    "us-gaap_IncomeTaxExpenseBenefit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "IncomeTaxExpenseBenefit",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited": {
       "parentTag": "us-gaap_IncomeLossFromContinuingOperations",
       "weight": -1.0,
       "order": 2.0
      },
      "http://www.westport.com/role/LongterminvestmentsIncomeStatementDetails": {
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited",
      "http://www.westport.com/role/LongterminvestmentsIncomeStatementDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Income tax expense",
        "verboseLabel": "Income tax (recovery) expense",
        "label": "Income Tax Expense (Benefit)",
        "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations."
       }
      }
     },
     "auth_ref": [
      "r151",
      "r157",
      "r231",
      "r255",
      "r256",
      "r268",
      "r285",
      "r299",
      "r449",
      "r450",
      "r457",
      "r610",
      "r791",
      "r793",
      "r794",
      "r822"
     ]
    },
    "us-gaap_IncomeTaxesPaidNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "IncomeTaxesPaidNet",
     "crdr": "credit",
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Taxes paid, net of refunds",
        "label": "Income Taxes Paid, Net",
        "documentation": "Amount, after refund, of cash paid to foreign, federal, state, and local jurisdictions as income tax."
       }
      }
     },
     "auth_ref": [
      "r37",
      "r229",
      "r453",
      "r454"
     ]
    },
    "us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "IncreaseDecreaseInAccountsPayableAndAccruedLiabilities",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited": {
       "parentTag": "us-gaap_IncreaseDecreaseInOperatingCapital",
       "weight": -1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accounts payable and accrued liabilities",
        "label": "Increase (Decrease) in Accounts Payable and Accrued Liabilities",
        "documentation": "The increase (decrease) during the reporting period in the amounts payable to vendors for goods and services received and the amount of obligations and expenses incurred but not paid."
       }
      }
     },
     "auth_ref": [
      "r8"
     ]
    },
    "us-gaap_IncreaseDecreaseInAccountsReceivable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "IncreaseDecreaseInAccountsReceivable",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited": {
       "parentTag": "us-gaap_IncreaseDecreaseInOperatingCapital",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedTerseLabel": "Accounts receivable",
        "label": "Increase (Decrease) in Accounts Receivable",
        "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."
       }
      }
     },
     "auth_ref": [
      "r8"
     ]
    },
    "us-gaap_IncreaseDecreaseInInventories": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "IncreaseDecreaseInInventories",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited": {
       "parentTag": "us-gaap_IncreaseDecreaseInOperatingCapital",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedTerseLabel": "Inventories",
        "label": "Increase (Decrease) in Inventories",
        "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."
       }
      }
     },
     "auth_ref": [
      "r8"
     ]
    },
    "us-gaap_IncreaseDecreaseInOperatingCapital": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "IncreaseDecreaseInOperatingCapital",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "weight": -1.0,
       "order": 10.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedTerseLabel": "Changes in operating assets and liabilities",
        "negatedTotalLabel": "Total changes in operating assets and liabilities",
        "label": "Adjustment to Reconcile Net Income to Cash Provided by (Used in) Operating Activity, Increase (Decrease) in Operating Capital",
        "documentation": "Amount of increase (decrease) in asset and (increase) decrease in liability, used in operating activity in reconciling net income to reflect cash provided by (used in) operating activity when indirect cash flow method is applied."
       }
      }
     },
     "auth_ref": [
      "r8"
     ]
    },
    "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "IncreaseDecreaseInOperatingCapitalAbstract",
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Changes in operating assets and liabilities:",
        "label": "Adjustment to Reconcile Net Income to Cash Provided by (Used in) Operating Activity, Increase (Decrease) in Operating Capital [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncreaseDecreaseInPrepaidExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "IncreaseDecreaseInPrepaidExpense",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited": {
       "parentTag": "us-gaap_IncreaseDecreaseInOperatingCapital",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedTerseLabel": "Prepaid expenses",
        "label": "Increase (Decrease) in Prepaid Expense",
        "documentation": "The increase (decrease) during the reporting period in the amount of outstanding money paid in advance for goods or services that bring economic benefits for future periods."
       }
      }
     },
     "auth_ref": [
      "r8"
     ]
    },
    "us-gaap_IncreaseDecreaseInStockholdersEquityRollForward": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "IncreaseDecreaseInStockholdersEquityRollForward",
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofShareholdersEquityunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Increase (Decrease) in Stockholders' Equity [Roll Forward]",
        "label": "Increase (Decrease) in Stockholders' Equity [Roll Forward]",
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period."
       }
      }
     },
     "auth_ref": []
    },
    "wprt_IncreaseDecreaseInWarrantyLiability": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "IncreaseDecreaseInWarrantyLiability",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited": {
       "parentTag": "us-gaap_IncreaseDecreaseInOperatingCapital",
       "weight": -1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Warranty liability",
        "label": "Increase (Decrease) In Warranty Liability",
        "documentation": "Increase (Decrease) In Warranty Liability"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IntangibleAssetsNetExcludingGoodwill": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "IntangibleAssetsNetExcludingGoodwill",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Intangible assets",
        "label": "Intangible Assets, Net (Excluding Goodwill)",
        "documentation": "Sum of the carrying amounts of all intangible assets, excluding goodwill, as of the balance sheet date, net of accumulated amortization and impairment charges."
       }
      }
     },
     "auth_ref": [
      "r339",
      "r918",
      "r919"
     ]
    },
    "us-gaap_InterestExpenseDebt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "InterestExpenseDebt",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited": {
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": -1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited",
      "http://www.westport.com/role/SegmentInformationReconciliationofSegmentEBITDAtoLossbeforeincometaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Interest on long-term debt",
        "terseLabel": "Interest on long-term debt and accretion of royalty payable",
        "label": "Interest Expense, Debt",
        "documentation": "Amount of the cost of borrowed funds accounted for as interest expense for debt."
       }
      }
     },
     "auth_ref": [
      "r107",
      "r377",
      "r383",
      "r814",
      "r815",
      "r1022"
     ]
    },
    "us-gaap_InterestExpenseLongTermDebt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "InterestExpenseLongTermDebt",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "weight": 1.0,
       "order": 7.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Interest on long-term debt",
        "label": "Interest Expense, Long-Term Debt",
        "documentation": "Aggregate amount of interest paid or due on all long-term debt."
       }
      }
     },
     "auth_ref": [
      "r146",
      "r160",
      "r161"
     ]
    },
    "us-gaap_InterestIncomeExpenseNonoperatingNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "InterestIncomeExpenseNonoperatingNet",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited": {
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited",
      "http://www.westport.com/role/LongterminvestmentsIncomeStatementDetails",
      "http://www.westport.com/role/SegmentInformationReconciliationofSegmentEBITDAtoLossbeforeincometaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Interest and other income (loss), net of bank charges",
        "verboseLabel": "Interest income, net of bank charges",
        "negatedTerseLabel": "Interest and other income, net of bank charges",
        "label": "Interest Income (Expense), Nonoperating",
        "documentation": "Amount of interest income (expense) classified as nonoperating."
       }
      }
     },
     "auth_ref": [
      "r805",
      "r827",
      "r884",
      "r907"
     ]
    },
    "us-gaap_InterestPaidNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "InterestPaidNet",
     "crdr": "credit",
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Interest paid",
        "label": "Interest Paid, Excluding Capitalized Interest, Operating Activity",
        "documentation": "Amount of cash paid for interest, excluding capitalized interest, classified as operating activity. Includes, but is not limited to, payment to settle zero-coupon bond for accreted interest of debt discount and debt instrument with insignificant coupon interest rate in relation to effective interest rate of borrowing attributable to accreted interest of debt discount."
       }
      }
     },
     "auth_ref": [
      "r226",
      "r227",
      "r228"
     ]
    },
    "us-gaap_InventoryDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "InventoryDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Inventory Disclosure [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_InventoryDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "InventoryDisclosureTextBlock",
     "presentation": [
      "http://www.westport.com/role/Inventories"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Inventories",
        "label": "Inventory Disclosure [Text Block]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r325"
     ]
    },
    "us-gaap_InventoryFinishedGoods": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "InventoryFinishedGoods",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/InventoriesScheduleofInventoriesDetails": {
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/InventoriesScheduleofInventoriesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Finished goods",
        "label": "Inventory, Finished Goods, Gross",
        "documentation": "Amount before valuation and LIFO reserves of completed merchandise or goods expected to be sold within one year or operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r876"
     ]
    },
    "us-gaap_InventoryNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "InventoryNet",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 3.0
      },
      "http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 3.0
      },
      "http://www.westport.com/role/InventoriesScheduleofInventoriesDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited",
      "http://www.westport.com/role/InventoriesScheduleofInventoriesDetails",
      "http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Inventories (note 7)",
        "totalLabel": "Inventories",
        "verboseLabel": "Inventories",
        "label": "Inventory, Net",
        "documentation": "Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r210",
      "r787",
      "r835"
     ]
    },
    "wprt_InventoryPurchasedServicesAndOtherExpensesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "InventoryPurchasedServicesAndOtherExpensesMember",
     "presentation": [
      "http://www.westport.com/role/RelatedpartytransactionsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Inventory purchased, services and other expenses",
        "label": "Inventory Purchased, Services and Other Expenses [Member]",
        "documentation": "Inventory Purchased, Services and Other Expenses"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_InventoryWriteDown": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "InventoryWriteDown",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "weight": 1.0,
       "order": 8.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited",
      "http://www.westport.com/role/InventoriesNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Change in inventory write-downs",
        "verboseLabel": "Inventory write-down to net realizable value",
        "label": "Inventory Write-down",
        "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."
       }
      }
     },
     "auth_ref": [
      "r326"
     ]
    },
    "us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "InvestmentsDebtAndEquitySecuritiesAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Investments, Debt and Equity Securities [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LeaseCost": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "LeaseCost",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesComponentsofLeaseCostDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesComponentsofLeaseCostDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total lease cost",
        "label": "Lease, Cost",
        "documentation": "Amount of lease cost recognized by lessee for lease contract."
       }
      }
     },
     "auth_ref": [
      "r525",
      "r834"
     ]
    },
    "us-gaap_LeaseCostTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "LeaseCostTableTextBlock",
     "presentation": [
      "http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Component of Lease Cost",
        "label": "Lease, Cost [Table Text Block]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r974"
     ]
    },
    "us-gaap_LeaseholdImprovementsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "LeaseholdImprovementsMember",
     "presentation": [
      "http://www.westport.com/role/PropertyplantandequipmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Leasehold improvements",
        "label": "Leasehold Improvements [Member]",
        "documentation": "Additions or improvements to assets held under a lease arrangement."
       }
      }
     },
     "auth_ref": [
      "r117",
      "r530"
     ]
    },
    "us-gaap_LeasesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "LeasesAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Leases [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
     "presentation": [
      "http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Maturities of Lease Liabilities",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Maturity [Table Text Block]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r975"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDue",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesMaturitiesofLeaseLiabilitiesDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesMaturitiesofLeaseLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total undiscounted cash flows",
        "label": "Lessee, Operating Lease, Liability, to be Paid",
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease."
       }
      }
     },
     "auth_ref": [
      "r529",
      "r890",
      "r895",
      "r983"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesMaturitiesofLeaseLiabilitiesDetails": {
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesMaturitiesofLeaseLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "2026",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Year One",
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": [
      "r529",
      "r890",
      "r895",
      "r983"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFour",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesMaturitiesofLeaseLiabilitiesDetails": {
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesMaturitiesofLeaseLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "2029",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Year Four",
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": [
      "r529",
      "r890",
      "r895",
      "r983"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesMaturitiesofLeaseLiabilitiesDetails": {
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesMaturitiesofLeaseLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "2028",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Year Three",
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": [
      "r529",
      "r890",
      "r895",
      "r983"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesMaturitiesofLeaseLiabilitiesDetails": {
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesMaturitiesofLeaseLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "2027",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Year Two",
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": [
      "r529",
      "r890",
      "r895",
      "r983"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesMaturitiesofLeaseLiabilitiesDetails": {
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesMaturitiesofLeaseLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "The remainder of 2025",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Remainder of Fiscal Year",
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease having initial or remaining lease term in excess of one year to be paid in remainder of current fiscal year."
       }
      }
     },
     "auth_ref": [
      "r975"
     ]
    },
    "wprt_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "LesseeOperatingLeaseLiabilityToBePaidAfterYearFour",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesMaturitiesofLeaseLiabilitiesDetails": {
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0,
       "order": 6.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesMaturitiesofLeaseLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Thereafter",
        "label": "Lessee, Operating Lease, Liability, To Be Paid, After Year Four",
        "documentation": "Lessee, Operating Lease, Liability, To Be Paid, After Year Four"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount",
     "crdr": "credit",
     "presentation": [
      "http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesMaturitiesofLeaseLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Less: imputed interest",
        "label": "Lessee, Operating Lease, Liability, Undiscounted Excess Amount",
        "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease."
       }
      }
     },
     "auth_ref": [
      "r529"
     ]
    },
    "us-gaap_LesseeOperatingLeasesTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "LesseeOperatingLeasesTextBlock",
     "presentation": [
      "http://www.westport.com/role/Operatingleasesrightofuseassetsandleaseliabilities"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Operating leases right-of-use assets and lease liabilities",
        "label": "Lessee, Operating Leases [Text Block]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r520"
     ]
    },
    "us-gaap_Liabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "Liabilities",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited": {
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0,
       "order": 1.0
      },
      "http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails": {
       "parentTag": "us-gaap_AssetsNet",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited",
      "http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total liabilities",
        "label": "Liabilities",
        "documentation": "Amount of liability recognized for present obligation requiring transfer or otherwise providing economic benefit to others."
       }
      }
     },
     "auth_ref": [
      "r23",
      "r74",
      "r75",
      "r76",
      "r78",
      "r79",
      "r80",
      "r83",
      "r231",
      "r233",
      "r234",
      "r318",
      "r353",
      "r354",
      "r356",
      "r357",
      "r358",
      "r359",
      "r360",
      "r362",
      "r363",
      "r472",
      "r473",
      "r474",
      "r499",
      "r651",
      "r799",
      "r816",
      "r861",
      "r930",
      "r979",
      "r980"
     ]
    },
    "us-gaap_LiabilitiesAndStockholdersEquity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "LiabilitiesAndStockholdersEquity",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total liabilities and shareholders' equity",
        "label": "Liabilities and Equity",
        "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any."
       }
      }
     },
     "auth_ref": [
      "r91",
      "r141",
      "r599",
      "r835",
      "r850",
      "r851",
      "r889",
      "r893",
      "r915",
      "r969"
     ]
    },
    "us-gaap_LiabilitiesAndStockholdersEquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "LiabilitiesAndStockholdersEquityAbstract",
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Liabilities and shareholders\u2019 equity",
        "label": "Liabilities and Equity [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LiabilitiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "LiabilitiesCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited": {
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0,
       "order": 1.0
      },
      "http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited",
      "http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total current liabilities",
        "label": "Liabilities, Current",
        "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."
       }
      }
     },
     "auth_ref": [
      "r76",
      "r199",
      "r231",
      "r233",
      "r234",
      "r318",
      "r353",
      "r354",
      "r356",
      "r357",
      "r358",
      "r359",
      "r360",
      "r362",
      "r363",
      "r472",
      "r473",
      "r474",
      "r499",
      "r835",
      "r930",
      "r979",
      "r980"
     ]
    },
    "us-gaap_LiabilitiesCurrentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "LiabilitiesCurrentAbstract",
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited",
      "http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Current liabilities:",
        "label": "Liabilities, Current [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total liabilities classified as held for sale",
        "label": "Disposal Group, Including Discontinued Operation, Liabilities",
        "documentation": "Amount classified as liabilities attributable to disposal group held for sale or disposed of."
       }
      }
     },
     "auth_ref": [
      "r1",
      "r53",
      "r67",
      "r118",
      "r196",
      "r197"
     ]
    },
    "us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation",
       "weight": 1.0,
       "order": 1.0
      },
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited",
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Current liabilities held for sale (note 5)",
        "totalLabel": "Current liabilities classified as held for sale",
        "label": "Disposal Group, Including Discontinued Operation, Liabilities, Current",
        "documentation": "Amount classified as liabilities attributable to disposal group held for sale or disposed of, expected to be disposed of within one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r1",
      "r53",
      "r67",
      "r116",
      "r118",
      "r196",
      "r197"
     ]
    },
    "us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails": {
       "parentTag": "us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation",
       "weight": 1.0,
       "order": 2.0
      },
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited": {
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited",
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Long-term liabilities held for sale (note 5)",
        "totalLabel": "Noncurrent liabilities classified as held for sale",
        "label": "Disposal Group, Including Discontinued Operation, Liabilities, Noncurrent",
        "documentation": "Amount classified as liabilities attributable to disposal group held for sale or disposed of, expected to be disposed of beyond one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r1",
      "r3",
      "r53",
      "r67",
      "r118",
      "r196",
      "r197"
     ]
    },
    "wprt_LightDutyMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "LightDutyMember",
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsAssetsandLiabilitiesoftheDiscontinuedOperationsDetails",
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsNarrativeDetails",
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsRevenueandExpensesoftheDiscontinuedOperationsDetails",
      "http://www.westport.com/role/LiquidityandGoingConcernDetails",
      "http://www.westport.com/role/SegmentInformationTotalassetallocationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Light-Duty",
        "verboseLabel": "Light-Duty (Held-for-sale)",
        "label": "Light-Duty [Member]",
        "documentation": "Light-Duty"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "LoansNotesTradeAndOtherReceivablesDisclosureTextBlock",
     "presentation": [
      "http://www.westport.com/role/Accountsreceivable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accounts receivable",
        "label": "Loans, Notes, Trade and Other Receivables Disclosure [Text Block]",
        "documentation": "The entire disclosure for claims held for amounts due to entity, excluding financing receivables. Examples include, but are not limited to, trade accounts receivables, notes receivables, loans receivables. Includes disclosure for allowance for credit losses."
       }
      }
     },
     "auth_ref": [
      "r517",
      "r912"
     ]
    },
    "us-gaap_LoansPayableMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "LoansPayableMember",
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Loans Payable",
        "label": "Loans Payable [Member]",
        "documentation": "Borrowing supported by a written promise to pay an obligation."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LongTermDebtAndCapitalLeaseObligations": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "LongTermDebtAndCapitalLeaseObligations",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/LongtermdebtTermLoanFacilitiesDetails": {
       "parentTag": "us-gaap_DebtAndCapitalLeaseObligations",
       "weight": 1.0,
       "order": 2.0
      },
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited": {
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited",
      "http://www.westport.com/role/LongtermdebtTermLoanFacilitiesDetails",
      "http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Long-term debt (note 12)",
        "netLabel": "Long-term portion of provisions",
        "verboseLabel": "Long-term portion",
        "label": "Long-Term Debt and Lease Obligation",
        "documentation": "Amount of long-term debt and lease obligation, classified as noncurrent."
       }
      }
     },
     "auth_ref": [
      "r23",
      "r592"
     ]
    },
    "us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "LongTermDebtAndCapitalLeaseObligationsCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/LongtermdebtTermLoanFacilitiesDetails": {
       "parentTag": "us-gaap_DebtAndCapitalLeaseObligations",
       "weight": 1.0,
       "order": 1.0
      },
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited",
      "http://www.westport.com/role/LiquidityandGoingConcernDetails",
      "http://www.westport.com/role/LongtermdebtTermLoanFacilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Current portion of long-term debt (note 12)",
        "verboseLabel": "Current portion of long-term debt",
        "label": "Long-Term Debt and Lease Obligation, Current",
        "documentation": "Amount of long-term debt and lease obligation, classified as current."
       }
      }
     },
     "auth_ref": [
      "r75"
     ]
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/LongtermdebtScheduleofMaturitiesonSeniorFinancingDetails": {
       "parentTag": "us-gaap_DebtInstrumentCarryingAmount",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/LongtermdebtScheduleofMaturitiesonSeniorFinancingDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "2026",
        "label": "Long-Term Debt, Maturity, Year One",
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": [
      "r12",
      "r232",
      "r237",
      "r375",
      "r589"
     ]
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/LongtermdebtScheduleofMaturitiesonSeniorFinancingDetails": {
       "parentTag": "us-gaap_DebtInstrumentCarryingAmount",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/LongtermdebtScheduleofMaturitiesonSeniorFinancingDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Remainder of 2025",
        "label": "Long-Term Debt, Maturity, Remainder of Fiscal Year",
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in remainder of current fiscal year."
       }
      }
     },
     "auth_ref": [
      "r890",
      "r895"
     ]
    },
    "us-gaap_LongTermDebtTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "LongTermDebtTextBlock",
     "presentation": [
      "http://www.westport.com/role/Longtermdebt"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Long-term debt",
        "label": "Long-Term Debt [Text Block]",
        "documentation": "The entire disclosure for long-term debt."
       }
      }
     },
     "auth_ref": [
      "r121"
     ]
    },
    "us-gaap_LongTermInvestments": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "LongTermInvestments",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited",
      "http://www.westport.com/role/LongterminvestmentsScheduleofInvestmentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Long-term investments (note 8)",
        "verboseLabel": "Long-term investments",
        "label": "Long-Term Investments",
        "documentation": "The total amount of investments that are intended to be held for an extended period of time (longer than one operating cycle)."
       }
      }
     },
     "auth_ref": [
      "r201"
     ]
    },
    "us-gaap_MachineryAndEquipmentMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "MachineryAndEquipmentMember",
     "presentation": [
      "http://www.westport.com/role/PropertyplantandequipmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Machinery and equipment",
        "label": "Machinery and Equipment [Member]",
        "documentation": "Tangible personal property used to produce goods and services, including, but is not limited to, tools, dies and molds, computer and office equipment."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NatureOfOperations": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "NatureOfOperations",
     "presentation": [
      "http://www.westport.com/role/Companyorganizationandoperations"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Company organization and operations",
        "label": "Nature of Operations [Text Block]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r152",
      "r270",
      "r797",
      "r798"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "NetCashProvidedByUsedInFinancingActivitiesContinuingOperations",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Net cash used in financing activities of continuing operations",
        "label": "Cash Provided by (Used in) Financing Activity, Continuing Operation",
        "documentation": "Amount of cash inflow (outflow) from financing activity attributable to continuing operation. Financing activity includes, but is not limited to, obtaining resource from owner and providing return on, and return of, their investment; borrowing money and repaying amount borrowed, or settling obligation; and obtaining and paying for other resource obtained from creditor on long-term credit."
       }
      }
     },
     "auth_ref": [
      "r886"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract",
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Financing activities:",
        "label": "Cash Provided by (Used in) Financing Activity, Continuing Operation [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "NetCashProvidedByUsedInInvestingActivitiesContinuingOperations",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Net cash provided by (used in) investing activities of continuing operations",
        "label": "Cash Provided by (Used in) Investing Activity, Continuing Operation",
        "documentation": "Amount of cash inflow (outflow) from investing activity attributable to continuing operation. Investing activity includes, but is not limited to, making and collecting loan, acquiring and disposing of debt and equity instruments, property, plant, and equipment, and other productive assets."
       }
      }
     },
     "auth_ref": [
      "r886"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract",
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Investing activities:",
        "label": "Cash Provided by (Used in) Investing Activity, Continuing Operation [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Net cash provided by (used in) operating activities of continuing operations",
        "label": "Cash Provided by (Used in) Operating Activity, Continuing Operation",
        "documentation": "Amount of cash inflow (outflow) from operating activity attributable to continuing operation. Operating activity includes, but is not limited to, transaction, adjustment, and change in value not defined as investing or financing activity."
       }
      }
     },
     "auth_ref": [
      "r111",
      "r112",
      "r113"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract",
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Operating activities:",
        "label": "Cash Provided by (Used in) Operating Activity, Continuing Operation [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NetIncomeLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "NetIncomeLoss",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited": {
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": 1.0,
       "order": 1.0
      },
      "http://www.westport.com/role/LongterminvestmentsIncomeStatementDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited",
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofShareholdersEquityunaudited",
      "http://www.westport.com/role/LongterminvestmentsIncomeStatementDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Net income (loss) for the period",
        "terseLabel": "Net income (loss) for the period",
        "label": "Net Income (Loss) Attributable to Parent",
        "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent."
       }
      }
     },
     "auth_ref": [
      "r105",
      "r113",
      "r145",
      "r192",
      "r197",
      "r213",
      "r216",
      "r220",
      "r231",
      "r233",
      "r234",
      "r236",
      "r243",
      "r248",
      "r249",
      "r250",
      "r251",
      "r252",
      "r255",
      "r256",
      "r263",
      "r318",
      "r353",
      "r354",
      "r356",
      "r357",
      "r358",
      "r359",
      "r360",
      "r362",
      "r363",
      "r387",
      "r390",
      "r392",
      "r395",
      "r444",
      "r465",
      "r470",
      "r494",
      "r499",
      "r605",
      "r674",
      "r695",
      "r696",
      "r791",
      "r793",
      "r794",
      "r860",
      "r930"
     ]
    },
    "us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock",
     "presentation": [
      "http://www.westport.com/role/Newaccountingpronouncements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "New accounting pronouncements",
        "label": "Accounting Standards Update and Change in Accounting Principle [Text Block]",
        "documentation": "The entire disclosure for change in accounting principle. Includes, but is not limited to, nature, reason, and method of adopting amendment to accounting standards or other change in accounting principle."
       }
      }
     },
     "auth_ref": [
      "r158",
      "r190",
      "r192",
      "r241",
      "r242",
      "r245",
      "r246",
      "r257",
      "r258",
      "r307",
      "r321",
      "r322",
      "r384",
      "r385",
      "r444",
      "r445",
      "r463",
      "r464",
      "r466",
      "r470",
      "r485",
      "r491",
      "r531",
      "r533",
      "r534",
      "r627",
      "r628",
      "r629",
      "r630",
      "r631"
     ]
    },
    "us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock",
     "presentation": [
      "http://www.westport.com/role/BasisofpreparationPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Upcoming accounting standards not yet adopted",
        "label": "New Accounting Pronouncements, Policy [Policy Text Block]",
        "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."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NumberOfReportableSegments": {
     "xbrltype": "integerItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "NumberOfReportableSegments",
     "presentation": [
      "http://www.westport.com/role/SegmentinformationNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Number of reportable segments",
        "label": "Number of Reportable Segments",
        "documentation": "Number of segments reported by the entity. A reportable segment is a component of an entity for which there is an accounting requirement to report separate financial information on that component in the entity's financial statements."
       }
      }
     },
     "auth_ref": [
      "r801",
      "r809",
      "r906"
     ]
    },
    "us-gaap_OciEquityMethodInvestmentAfterTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "OciEquityMethodInvestmentAfterTax",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited": {
       "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Ownership share of equity method investments' other comprehensive loss",
        "label": "OCI, Equity Method Investment, after Tax",
        "documentation": "Amount, after tax, of other comprehensive income (loss) (OCI) for proportionate share of equity method investee's OCI."
       }
      }
     },
     "auth_ref": [
      "r311"
     ]
    },
    "us-gaap_OperatingCostsAndExpenses": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "OperatingCostsAndExpenses",
     "crdr": "debit",
     "presentation": [
      "http://www.westport.com/role/SegmentInformationReconciliationofSegmentEBITDAtoLossbeforeincometaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Corporate and unallocated operating expenses",
        "label": "Operating Costs and Expenses",
        "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. Excludes Selling, General and Administrative Expense."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OperatingExpenses": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "OperatingExpenses",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/SegmentinformationFinancialinformationbybusinesssegmentDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.westport.com/role/SegmentinformationFinancialinformationbybusinesssegmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Operating expenses",
        "label": "Operating Expenses",
        "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."
       }
      }
     },
     "auth_ref": [
      "r794"
     ]
    },
    "us-gaap_OperatingIncomeLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "OperatingIncomeLoss",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited": {
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited",
      "http://www.westport.com/role/LiquidityandGoingConcernDetails",
      "http://www.westport.com/role/LongterminvestmentsIncomeStatementDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Loss from continuing operations",
        "negatedLabel": "Operating losses",
        "label": "Operating Income (Loss)",
        "documentation": "The net result for the period of deducting operating expenses from operating revenues."
       }
      }
     },
     "auth_ref": [
      "r149",
      "r791",
      "r794",
      "r800",
      "r900",
      "r907",
      "r909",
      "r910",
      "r911"
     ]
    },
    "wprt_OperatingLeaseExpensesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "OperatingLeaseExpensesMember",
     "presentation": [
      "http://www.westport.com/role/FinancialinstrumentsFinancialObligationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Operating lease obligations (note 11)",
        "label": "Operating Lease Expenses [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OperatingLeaseLiability": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "OperatingLeaseLiability",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesMaturitiesofLeaseLiabilitiesDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesMaturitiesofLeaseLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Present value of operating lease liabilities",
        "label": "Operating Lease, Liability",
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease."
       }
      }
     },
     "auth_ref": [
      "r523"
     ]
    },
    "us-gaap_OperatingLeaseLiabilityCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "OperatingLeaseLiabilityCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesMaturitiesofLeaseLiabilitiesDetails": {
       "parentTag": "us-gaap_OperatingLeaseLiability",
       "weight": 1.0,
       "order": 1.0
      },
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited",
      "http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesMaturitiesofLeaseLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Current portion of operating lease liabilities (note 11)",
        "verboseLabel": "Less: current portion",
        "label": "Operating Lease, Liability, Current",
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current."
       }
      }
     },
     "auth_ref": [
      "r523"
     ]
    },
    "us-gaap_OperatingLeaseLiabilityNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "OperatingLeaseLiabilityNoncurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited": {
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0,
       "order": 2.0
      },
      "http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesMaturitiesofLeaseLiabilitiesDetails": {
       "parentTag": "us-gaap_OperatingLeaseLiability",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited",
      "http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesMaturitiesofLeaseLiabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Long-term operating lease liabilities (note 11)",
        "label": "Operating Lease, Liability, Noncurrent",
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent."
       }
      }
     },
     "auth_ref": [
      "r523"
     ]
    },
    "us-gaap_OperatingLeaseRightOfUseAsset": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "OperatingLeaseRightOfUseAsset",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Operating lease right-of-use assets",
        "label": "Operating Lease, Right-of-Use Asset",
        "documentation": "Amount of lessee's right to use underlying asset under operating lease."
       }
      }
     },
     "auth_ref": [
      "r522"
     ]
    },
    "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "OperatingLeaseWeightedAverageDiscountRatePercent",
     "presentation": [
      "http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Weighted average discount rate",
        "label": "Operating Lease, Weighted Average Discount Rate, Percent",
        "documentation": "Weighted average discount rate for operating lease calculated at point in time."
       }
      }
     },
     "auth_ref": [
      "r528",
      "r834"
     ]
    },
    "us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "OperatingLeaseWeightedAverageRemainingLeaseTerm1",
     "presentation": [
      "http://www.westport.com/role/OperatingleasesrightofuseassetsandleaseliabilitiesNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Remaining lease term (in years)",
        "label": "Operating Lease, Weighted Average Remaining Lease Term",
        "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."
       }
      }
     },
     "auth_ref": [
      "r527",
      "r834"
     ]
    },
    "us-gaap_OperatingSegmentsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "OperatingSegmentsMember",
     "presentation": [
      "http://www.westport.com/role/SegmentInformationReconciliationofSegmentEBITDAtoLossbeforeincometaxesDetails",
      "http://www.westport.com/role/SegmentInformationTotalassetallocationDetails",
      "http://www.westport.com/role/SegmentinformationAssetsDetails",
      "http://www.westport.com/role/SegmentinformationFinancialinformationbybusinesssegmentDetails",
      "http://www.westport.com/role/SegmentinformationNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Operating Segments",
        "label": "Operating Segments [Member]",
        "documentation": "Identifies components of an entity that engage in business activities from which they may earn revenue and incur expenses, including transactions with other components of the same entity."
       }
      }
     },
     "auth_ref": [
      "r293",
      "r294",
      "r295",
      "r296",
      "r297",
      "r300",
      "r805",
      "r806"
     ]
    },
    "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Organization, Consolidation and Presentation of Financial Statements [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OtherAssetsNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "OtherAssetsNoncurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other long-term assets",
        "label": "Other Assets, Noncurrent",
        "documentation": "Amount of noncurrent assets classified as other."
       }
      }
     },
     "auth_ref": [
      "r205"
     ]
    },
    "us-gaap_OtherCommitmentsLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "OtherCommitmentsLineItems",
     "presentation": [
      "http://www.westport.com/role/FinancialinstrumentsFinancialObligationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other Commitments [Line Items]",
        "label": "Other Commitments [Line Items]",
        "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."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OtherCommitmentsTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "OtherCommitmentsTable",
     "presentation": [
      "http://www.westport.com/role/FinancialinstrumentsFinancialObligationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other Commitments [Table]",
        "label": "Other Commitments [Table]",
        "documentation": "Disclosure of information about obligations resulting from other commitments."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract",
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Other comprehensive income (loss):",
        "label": "Other Comprehensive Income (Loss), Net of Tax [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited": {
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited",
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofShareholdersEquityunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Other comprehensive income (loss)",
        "terseLabel": "Other comprehensive income (loss)",
        "label": "Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent",
        "documentation": "Amount after tax of other comprehensive income (loss) attributable to parent entity."
       }
      }
     },
     "auth_ref": [
      "r7",
      "r15",
      "r130",
      "r214",
      "r217",
      "r252"
     ]
    },
    "wprt_OtherEquityAccountedForInvesteesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "OtherEquityAccountedForInvesteesMember",
     "presentation": [
      "http://www.westport.com/role/LongterminvestmentsScheduleofInvestmentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other equity-accounted investees",
        "label": "Other Equity Accounted for Investees [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "wprt_OtherEquityInstrument": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "OtherEquityInstrument",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other equity instruments",
        "label": "Other Equity Instrument",
        "documentation": "Represents the value assigned to issued Units and the amounts accrued are recorded as other equity instruments. As Units are exercised and the underlying shares are issued from the treasury of the Company, the value is reclassified to share capital."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OtherInventoryPurchasedGoods": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "OtherInventoryPurchasedGoods",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/InventoriesScheduleofInventoriesDetails": {
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/InventoriesScheduleofInventoriesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Purchased parts",
        "label": "Other Inventory, Purchased Goods, Gross",
        "documentation": "Gross amount of components used by the entity which are bought from another entity rather than produced by the entity."
       }
      }
     },
     "auth_ref": [
      "r877"
     ]
    },
    "us-gaap_OtherLiabilitiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "OtherLiabilitiesCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other current liabilities",
        "label": "Other Liabilities, Current",
        "documentation": "Amount of liabilities classified as other, due within one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r75",
      "r835"
     ]
    },
    "us-gaap_OtherLiabilitiesNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "OtherLiabilitiesNoncurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited": {
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited",
      "http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other long-term liabilities",
        "label": "Other Liabilities, Noncurrent",
        "documentation": "Amount of liabilities classified as other, due after one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r79"
     ]
    },
    "us-gaap_OtherNotesPayableCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "OtherNotesPayableCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/AccountspayableandaccruedliabilitiesDetails": {
       "parentTag": "us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/AccountspayableandaccruedliabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Due to related parties (note 14)",
        "label": "Other Notes Payable, Current",
        "documentation": "Amount of long-term notes classified as other, payable within one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r75"
     ]
    },
    "us-gaap_OtherReceivables": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "OtherReceivables",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/AccountsreceivableScheduleofAccountsReceivableDetails": {
       "parentTag": "us-gaap_AccountsReceivableNetCurrent",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/AccountsreceivableScheduleofAccountsReceivableDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other receivables",
        "label": "Other Receivables",
        "documentation": "Amount due from parties in nontrade transactions, classified as other."
       }
      }
     },
     "auth_ref": [
      "r207",
      "r661",
      "r806",
      "r850",
      "r851",
      "r987"
     ]
    },
    "us-gaap_OtherReceivablesNetCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "OtherReceivablesNetCurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/AccountsreceivableScheduleofAccountsReceivableDetails": {
       "parentTag": "us-gaap_AccountsReceivableNetCurrent",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/AccountsreceivableScheduleofAccountsReceivableDetails",
      "http://www.westport.com/role/RelatedpartytransactionsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Due from related parties (note 14)",
        "verboseLabel": "Receivables",
        "label": "Other Receivables, Net, Current",
        "documentation": "Amount, after allowance, of receivables classified as other, due within one year or the operating cycle, if longer."
       }
      }
     },
     "auth_ref": []
    },
    "currency_PLN": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/currency/2025",
     "localname": "PLN",
     "presentation": [
      "http://www.westport.com/role/BasisofpreparationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Polish Zloty",
        "label": "Poland, Zlotych"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PayablesAndAccrualsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "PayablesAndAccrualsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Payables and Accruals [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PaymentsToAcquireEquityMethodInvestments": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "PaymentsToAcquireEquityMethodInvestments",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations",
       "weight": -1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited",
      "http://www.westport.com/role/LongterminvestmentsNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedTerseLabel": "Capital contributions to investments accounted for by the equity method",
        "terseLabel": "Capital contributions to investments accounted for by the equity method investment",
        "label": "Payments to Acquire Equity Method Investments",
        "documentation": "The cash outflow associated with the purchase of or advances to an equity method investments, which are investments in joint ventures and entities in which the entity has an equity ownership interest normally of 20 to 50 percent and exercises significant influence."
       }
      }
     },
     "auth_ref": [
      "r34"
     ]
    },
    "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "PaymentsToAcquirePropertyPlantAndEquipment",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations",
       "weight": -1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedTerseLabel": "Purchase of property, plant and equipment",
        "label": "Payments to Acquire Property, Plant, and Equipment",
        "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."
       }
      }
     },
     "auth_ref": [
      "r109"
     ]
    },
    "wprt_PerformanceStockUnitsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "PerformanceStockUnitsMember",
     "presentation": [
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "PSU's",
        "label": "Performance Stock Units [Member]",
        "documentation": "Performance Stock Units"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PrepaidExpenseCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "PrepaidExpenseCurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Prepaid expenses",
        "label": "Prepaid Expense, Current",
        "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits within a future period of one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r211",
      "r327",
      "r328",
      "r788"
     ]
    },
    "us-gaap_PrepaidExpenseCurrentAndNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "PrepaidExpenseCurrentAndNoncurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Prepaid expenses",
        "label": "Prepaid Expense",
        "documentation": "Carrying amount as of the balance sheet date of expenditures made in advance of when the economic benefit of the cost will be realized, and which will be expensed in future periods with the passage of time or when a triggering event occurs."
       }
      }
     },
     "auth_ref": [
      "r133",
      "r211",
      "r666",
      "r984"
     ]
    },
    "wprt_ProceedsFromCollectionOfHoldbackReceivable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "ProceedsFromCollectionOfHoldbackReceivable",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Proceeds from holdback receivable (note 6)",
        "label": "Proceeds From Collection Of Holdback Receivable",
        "documentation": "Proceeds From Collection Of Holdback Receivable"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ProceedsFromDivestitureOfBusinesses": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ProceedsFromDivestitureOfBusinesses",
     "crdr": "debit",
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cash proceeds from sale",
        "label": "Proceeds from Divestiture of Businesses",
        "documentation": "The cash inflow associated with the amount received from the sale of a portion of the company's business, for example a segment, division, branch or other business, during the period."
       }
      }
     },
     "auth_ref": [
      "r33"
     ]
    },
    "us-gaap_ProceedsFromLinesOfCredit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ProceedsFromLinesOfCredit",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Drawings on operating lines of credit and long-term facilities",
        "label": "Proceeds from Lines of Credit",
        "documentation": "Amount of cash inflow from contractual arrangement with the lender, including but not limited to, letter of credit, standby letter of credit and revolving credit arrangements."
       }
      }
     },
     "auth_ref": [
      "r35",
      "r889",
      "r891"
     ]
    },
    "us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ProceedsFromSaleMaturityAndCollectionsOfInvestments",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperations",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Proceeds from sale of investments",
        "label": "Proceeds from Sale, Maturity and Collection of Investments",
        "documentation": "The cash inflow associated with the sale, maturity and collection of all investments such as debt, security and so forth during the period."
       }
      }
     },
     "auth_ref": [
      "r32"
     ]
    },
    "us-gaap_ProductWarrantyAccrualClassifiedCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ProductWarrantyAccrualClassifiedCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Current portion of warranty liability",
        "label": "Product Warranty Accrual, Current",
        "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. For classified balance sheets, represents the current portion of the liabilities (due within one year or within the normal operating cycle if longer)."
       }
      }
     },
     "auth_ref": [
      "r75",
      "r927",
      "r928"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "PropertyPlantAndEquipmentAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Property, Plant and Equipment [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PropertyPlantAndEquipmentByTypeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "PropertyPlantAndEquipmentByTypeAxis",
     "presentation": [
      "http://www.westport.com/role/PropertyplantandequipmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Long-Lived Tangible Asset [Axis]",
        "label": "Long-Lived Tangible Asset [Axis]",
        "documentation": "Information by type of long-lived, physical assets used to produce goods and services and not intended for resale."
       }
      }
     },
     "auth_ref": [
      "r11",
      "r530"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "PropertyPlantAndEquipmentDisclosureTextBlock",
     "presentation": [
      "http://www.westport.com/role/Propertyplantandequipment"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Property, plant and equipment",
        "label": "Property, Plant and Equipment Disclosure [Text Block]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r115",
      "r153",
      "r154",
      "r155"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentGross": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "PropertyPlantAndEquipmentGross",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/PropertyplantandequipmentDetails": {
       "parentTag": "us-gaap_PropertyPlantAndEquipmentNet",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/PropertyplantandequipmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cost",
        "label": "Property, Plant and Equipment, Gross",
        "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."
       }
      }
     },
     "auth_ref": [
      "r117",
      "r202",
      "r602"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "PropertyPlantAndEquipmentLineItems",
     "presentation": [
      "http://www.westport.com/role/PropertyplantandequipmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Property, Plant and Equipment [Line Items]",
        "label": "Property, Plant and Equipment [Line Items]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r530"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "PropertyPlantAndEquipmentNet",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 2.0
      },
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 3.0
      },
      "http://www.westport.com/role/PropertyplantandequipmentDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited",
      "http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails",
      "http://www.westport.com/role/PropertyplantandequipmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Property, plant and equipment (note 9)",
        "verboseLabel": "Property, plant and equipment",
        "totalLabel": "Net Book Value",
        "label": "Property, Plant and Equipment, Net",
        "documentation": "Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures."
       }
      }
     },
     "auth_ref": [
      "r11",
      "r530",
      "r590",
      "r602",
      "r835"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "PropertyPlantAndEquipmentTextBlock",
     "presentation": [
      "http://www.westport.com/role/PropertyplantandequipmentTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Property, Plant and Equipment",
        "label": "Property, Plant and Equipment [Table Text Block]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r11"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentTypeDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "PropertyPlantAndEquipmentTypeDomain",
     "presentation": [
      "http://www.westport.com/role/PropertyplantandequipmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Long-Lived Tangible Asset [Domain]",
        "label": "Long-Lived Tangible Asset [Domain]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r117",
      "r530"
     ]
    },
    "us-gaap_ReceivablesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ReceivablesAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Receivables [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ReconciliationOfAssetsFromSegmentToConsolidatedTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ReconciliationOfAssetsFromSegmentToConsolidatedTable",
     "presentation": [
      "http://www.westport.com/role/SegmentInformationTotalassetallocationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Reconciliation of Assets from Segment to Consolidated [Table]",
        "label": "Reconciliation of Assets from Segment to Consolidated [Table]",
        "documentation": "Disclosure of information about identification, description, and amounts of all significant reconciling items in the reconciliation of total assets from reportable segments to the entity's consolidated assets."
       }
      }
     },
     "auth_ref": [
      "r41",
      "r42"
     ]
    },
    "us-gaap_RelatedPartyDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "RelatedPartyDomain",
     "presentation": [
      "http://www.westport.com/role/AccountspayableandaccruedliabilitiesDetails",
      "http://www.westport.com/role/AccountsreceivableScheduleofAccountsReceivableDetails",
      "http://www.westport.com/role/RelatedpartytransactionsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Related and Nonrelated Parties [Domain]",
        "label": "Related and Nonrelated Parties [Domain]",
        "documentation": "Related and nonrelated parties. Related party includes, but is not limited to, affiliate, other entity for which investment is accounted for under equity method, trust for benefit of employee, principal owner, management, and member of immediate family, and other party that may be prevented from pursuing separate interests because of control, significant influence, or ownership interest."
       }
      }
     },
     "auth_ref": [
      "r231",
      "r235",
      "r236",
      "r308",
      "r404",
      "r405",
      "r538",
      "r539",
      "r593",
      "r600",
      "r646",
      "r647",
      "r648",
      "r649",
      "r650",
      "r672",
      "r702",
      "r1021"
     ]
    },
    "us-gaap_RelatedPartyMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "RelatedPartyMember",
     "presentation": [
      "http://www.westport.com/role/AccountspayableandaccruedliabilitiesDetails",
      "http://www.westport.com/role/AccountsreceivableScheduleofAccountsReceivableDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Related Party",
        "label": "Related Party [Member]",
        "documentation": "Party related to reporting entity. Includes, but is not limited to, affiliate, entity for which investment is accounted for by equity method, trust for benefit of employees, and principal owner, management, and members of immediate family."
       }
      }
     },
     "auth_ref": [
      "r231",
      "r235",
      "r236",
      "r538",
      "r539",
      "r540",
      "r541",
      "r593",
      "r600",
      "r646",
      "r647",
      "r648",
      "r649",
      "r650",
      "r672",
      "r702"
     ]
    },
    "us-gaap_RelatedPartyTransactionAmountsOfTransaction": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "RelatedPartyTransactionAmountsOfTransaction",
     "crdr": "debit",
     "presentation": [
      "http://www.westport.com/role/RelatedpartytransactionsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Transaction amount",
        "label": "Related Party Transaction, Amounts of Transaction",
        "documentation": "Amount of transactions with related party during the financial reporting period."
       }
      }
     },
     "auth_ref": [
      "r538"
     ]
    },
    "us-gaap_RelatedPartyTransactionAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "RelatedPartyTransactionAxis",
     "presentation": [
      "http://www.westport.com/role/RelatedpartytransactionsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Related Party Transaction [Axis]",
        "label": "Related Party Transaction [Axis]",
        "documentation": "Information by type of related party transaction."
       }
      }
     },
     "auth_ref": [
      "r231",
      "r235",
      "r236",
      "r538",
      "r539",
      "r978"
     ]
    },
    "us-gaap_RelatedPartyTransactionDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "RelatedPartyTransactionDomain",
     "presentation": [
      "http://www.westport.com/role/RelatedpartytransactionsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Related Party Transaction [Domain]",
        "label": "Related Party Transaction [Domain]",
        "documentation": "Transaction between related party."
       }
      }
     },
     "auth_ref": [
      "r231",
      "r235",
      "r236",
      "r978"
     ]
    },
    "us-gaap_RelatedPartyTransactionLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "RelatedPartyTransactionLineItems",
     "presentation": [
      "http://www.westport.com/role/RelatedpartytransactionsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Related Party Transaction [Line Items]",
        "label": "Related Party Transaction [Line Items]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r231",
      "r235",
      "r236",
      "r308",
      "r538",
      "r539",
      "r541",
      "r677",
      "r678",
      "r681"
     ]
    },
    "us-gaap_RelatedPartyTransactionsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "RelatedPartyTransactionsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Related Party Transactions [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RelatedPartyTransactionsByRelatedPartyAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "RelatedPartyTransactionsByRelatedPartyAxis",
     "presentation": [
      "http://www.westport.com/role/AccountspayableandaccruedliabilitiesDetails",
      "http://www.westport.com/role/AccountsreceivableScheduleofAccountsReceivableDetails",
      "http://www.westport.com/role/RelatedpartytransactionsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Related and Nonrelated Parties [Axis]",
        "label": "Related and Nonrelated Parties [Axis]",
        "documentation": "Information by related and nonrelated parties. Related party includes, but is not limited to, affiliate, other entity for which investment is accounted for under equity method, trust for benefit of employee, principal owner, management, and member of immediate family, and other party that may be prevented from pursuing separate interests because of control, significant influence, or ownership interest."
       }
      }
     },
     "auth_ref": [
      "r231",
      "r235",
      "r236",
      "r308",
      "r404",
      "r405",
      "r538",
      "r539",
      "r593",
      "r600",
      "r646",
      "r647",
      "r648",
      "r649",
      "r650",
      "r672",
      "r702",
      "r978",
      "r1021"
     ]
    },
    "us-gaap_RelatedPartyTransactionsDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "RelatedPartyTransactionsDisclosureTextBlock",
     "presentation": [
      "http://www.westport.com/role/Relatedpartytransactions"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Related party transactions",
        "label": "Related Party Transactions Disclosure [Text Block]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r535",
      "r536",
      "r537",
      "r539",
      "r542",
      "r636",
      "r637",
      "r638",
      "r679",
      "r680",
      "r681",
      "r700",
      "r701"
     ]
    },
    "us-gaap_RepaymentsOfLongTermLinesOfCredit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "RepaymentsOfLongTermLinesOfCredit",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperations",
       "weight": -1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedTerseLabel": "Repayments of operating lines of credit and long-term facilities",
        "label": "Repayments of Long-Term Lines of Credit",
        "documentation": "The cash outflow for the settlement of obligation drawn 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 maturities due beyond one year or the operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r110"
     ]
    },
    "us-gaap_ResearchAndDevelopmentExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ResearchAndDevelopmentExpense",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited": {
       "parentTag": "us-gaap_CostsAndExpenses",
       "weight": 1.0,
       "order": 1.0
      },
      "http://www.westport.com/role/SegmentinformationFinancialinformationbybusinesssegmentDetails": {
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited",
      "http://www.westport.com/role/LongterminvestmentsIncomeStatementDetails",
      "http://www.westport.com/role/SegmentinformationFinancialinformationbybusinesssegmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Research and development",
        "label": "Research and Development Expense",
        "documentation": "Amount of expense for research and development. Includes, but is not limited to, cost for computer software product to be sold, leased, or otherwise marketed and writeoff of research and development assets acquired in transaction other than business combination or joint venture formation or both. Excludes write-down of intangible asset acquired in business combination or from joint venture formation or both, used in research and development activity."
       }
      }
     },
     "auth_ref": [
      "r448",
      "r784",
      "r791",
      "r792",
      "r805",
      "r981"
     ]
    },
    "wprt_ResearchAndDevelopmentExpenseAdjustmentForRounding": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "ResearchAndDevelopmentExpenseAdjustmentForRounding",
     "crdr": "debit",
     "presentation": [
      "http://www.westport.com/role/SegmentinformationFinancialinformationbybusinesssegmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Research and development",
        "label": "Research and Development Expense, Adjustment for Rounding",
        "documentation": "Research and Development Expense, Adjustment for Rounding"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ResearchAndDevelopmentExpenseMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ResearchAndDevelopmentExpenseMember",
     "presentation": [
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansStockbasedcompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Research and development",
        "label": "Research and Development Expense [Member]",
        "documentation": "Primary financial statement caption in which the reported facts about research and development expense have been included."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RestrictedCashAndCashEquivalents": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "RestrictedCashAndCashEquivalents",
     "crdr": "debit",
     "presentation": [
      "http://www.westport.com/role/FinancialinstrumentsNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Restricted cash",
        "label": "Restricted Cash and Cash Equivalent",
        "documentation": "Amount of cash and cash equivalent restricted as to withdrawal or usage. Cash includes, but is not limited to, currency on hand, demand deposit with financial institution, and account with general characteristic of demand deposit. Cash equivalent includes, but is not limited to, short-term, highly liquid investment that is both readily convertible to known amount of cash and so near maturity that it presents insignificant risk of change in value because of change in interest rate."
       }
      }
     },
     "auth_ref": [
      "r36",
      "r132",
      "r200",
      "r230",
      "r595"
     ]
    },
    "us-gaap_RestrictedStockUnitsRSUMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "RestrictedStockUnitsRSUMember",
     "presentation": [
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Restricted Stock Units (RSUs)",
        "label": "Restricted Stock Units (RSUs) [Member]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r932",
      "r933",
      "r934",
      "r935",
      "r936",
      "r937",
      "r938",
      "r939",
      "r940",
      "r941",
      "r942",
      "r943",
      "r944",
      "r945",
      "r946",
      "r947",
      "r948",
      "r949",
      "r950",
      "r951",
      "r952",
      "r953",
      "r954",
      "r955",
      "r956",
      "r957"
     ]
    },
    "us-gaap_RetainedEarningsAccumulatedDeficit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "RetainedEarningsAccumulatedDeficit",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accumulated deficit",
        "label": "Retained Earnings (Accumulated Deficit)",
        "documentation": "Amount of accumulated undistributed earnings (deficit)."
       }
      }
     },
     "auth_ref": [
      "r88",
      "r124",
      "r598",
      "r627",
      "r631",
      "r635",
      "r654",
      "r835"
     ]
    },
    "us-gaap_RetainedEarningsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "RetainedEarningsMember",
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofShareholdersEquityunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accumulated deficit",
        "label": "Retained Earnings [Member]",
        "documentation": "Accumulated undistributed earnings (deficit)."
       }
      }
     },
     "auth_ref": [
      "r189",
      "r191",
      "r192",
      "r238",
      "r239",
      "r240",
      "r244",
      "r252",
      "r254",
      "r256",
      "r320",
      "r323",
      "r341",
      "r386",
      "r444",
      "r455",
      "r456",
      "r460",
      "r461",
      "r462",
      "r466",
      "r469",
      "r470",
      "r480",
      "r482",
      "r483",
      "r486",
      "r492",
      "r519",
      "r521",
      "r624",
      "r626",
      "r639",
      "r1023"
     ]
    },
    "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "RevenueFromContractWithCustomerExcludingAssessedTax",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited": {
       "parentTag": "us-gaap_GrossProfit",
       "weight": 1.0,
       "order": 1.0
      },
      "http://www.westport.com/role/LongterminvestmentsIncomeStatementDetails": {
       "parentTag": "us-gaap_GrossProfit",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited",
      "http://www.westport.com/role/LongterminvestmentsIncomeStatementDetails",
      "http://www.westport.com/role/SegmentinformationFinancialinformationbybusinesssegmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Revenue",
        "label": "Revenue from Contract with Customer, Excluding Assessed Tax",
        "documentation": "Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise."
       }
      }
     },
     "auth_ref": [
      "r147",
      "r148",
      "r268",
      "r278",
      "r279",
      "r293",
      "r299",
      "r302",
      "r304",
      "r306",
      "r400",
      "r401",
      "r402",
      "r544",
      "r791",
      "r794"
     ]
    },
    "currency_SEK": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/currency/2025",
     "localname": "SEK",
     "presentation": [
      "http://www.westport.com/role/BasisofpreparationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Swedish Krona",
        "label": "Sweden, Kronor"
       }
      }
     },
     "auth_ref": []
    },
    "wprt_SalesOfGoodsServicesAndOtherIncomeMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "SalesOfGoodsServicesAndOtherIncomeMember",
     "presentation": [
      "http://www.westport.com/role/RelatedpartytransactionsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Sales of goods, services, and other income",
        "label": "Sales of Goods, Services and Other Income [Member]",
        "documentation": "Sales of Goods, Services and Other Income"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SalesRevenueProductLineMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "SalesRevenueProductLineMember",
     "presentation": [
      "http://www.westport.com/role/SegmentinformationPercentofrevenuebygeographicallocationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Revenue, Product and Service Benchmark",
        "label": "Revenue, Product and Service Benchmark [Member]",
        "documentation": "Revenue from specified product or service, when it serves as benchmark in concentration of risk calculation. Includes, but is not limited to, revenue from contract with customer and other sources."
       }
      }
     },
     "auth_ref": [
      "r902",
      "r903"
     ]
    },
    "srt_ScenarioForecastMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2025",
     "localname": "ScenarioForecastMember",
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Forecast",
        "label": "Forecast [Member]",
        "documentation": "Information reported for future period. Excludes information expected to be reported in future period for effect on historical fact."
       }
      }
     },
     "auth_ref": [
      "r406",
      "r868"
     ]
    },
    "srt_ScenarioUnspecifiedDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2025",
     "localname": "ScenarioUnspecifiedDomain",
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Scenario [Domain]",
        "label": "Scenario [Domain]",
        "documentation": "Scenario reported, distinguishing information from actual fact. Includes, but is not limited to, pro forma and forecast. Excludes actual facts."
       }
      }
     },
     "auth_ref": [
      "r188",
      "r193",
      "r194",
      "r257",
      "r406",
      "r863"
     ]
    },
    "us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ScheduleOfAccountsNotesLoansAndFinancingReceivableTable",
     "presentation": [
      "http://www.westport.com/role/AccountsreceivableNarrativeDetails",
      "http://www.westport.com/role/AccountsreceivableScheduleofAccountsReceivableDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accounts and Financing Receivables [Table]",
        "label": "Accounts and Financing Receivables [Table]",
        "documentation": "Disclosure of information about accounts and financing receivables. Includes, but is not limited to, amount of receivable and allowance for credit loss."
       }
      }
     },
     "auth_ref": [
      "r86",
      "r92",
      "r309",
      "r914"
     ]
    },
    "us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
     "presentation": [
      "http://www.westport.com/role/AccountsreceivableTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Accounts Receivable",
        "label": "Schedule of Accounts, Notes, Loans and Financing Receivable [Table Text Block]",
        "documentation": "Tabular disclosure of the various types of trade accounts and notes receivable and for each the gross carrying value, allowance, and net carrying value as of the balance sheet date. Presentation is categorized by current, noncurrent and unclassified receivables."
       }
      }
     },
     "auth_ref": [
      "r86",
      "r92"
     ]
    },
    "us-gaap_ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock",
     "presentation": [
      "http://www.westport.com/role/AccountspayableandaccruedliabilitiesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accounts Payable and Accrued Liabilities",
        "label": "Schedule of Accounts Payable and Accrued Liabilities [Table Text Block]",
        "documentation": "Tabular disclosure of the (a) 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 (accounts payable); (b) other payables; and (c) accrued liabilities. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer). An alternative caption includes accrued expenses."
       }
      }
     },
     "auth_ref": []
    },
    "wprt_ScheduleOfAllocationOfTotalAssetsTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "ScheduleOfAllocationOfTotalAssetsTableTextBlock",
     "presentation": [
      "http://www.westport.com/role/SegmentinformationTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Allocation of the Total Assets",
        "label": "Schedule Of Allocation Of The Total Assets [Table Text Block]",
        "documentation": "Tabular disclosure of the total assets allocated the reportable segments."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ScheduleOfDebtInstrumentsTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ScheduleOfDebtInstrumentsTextBlock",
     "presentation": [
      "http://www.westport.com/role/LongtermdebtTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Long-term Debt Instruments",
        "label": "Schedule of Long-Term Debt Instruments [Table Text Block]",
        "documentation": "Tabular disclosure of long-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 entity, if longer."
       }
      }
     },
     "auth_ref": [
      "r23",
      "r44",
      "r45",
      "r51",
      "r122",
      "r123",
      "r812",
      "r814",
      "r890",
      "r895",
      "r972",
      "r983"
     ]
    },
    "us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock",
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Discontinued Operations",
        "label": "Disposal Groups, Including Discontinued Operations [Table Text Block]",
        "documentation": "Tabular disclosure of information related to a disposal group. Includes, but is not limited to, a discontinued operation, disposal classified as held-for-sale or disposed of by means other than sale or disposal of an individually significant component."
       }
      }
     },
     "auth_ref": [
      "r13",
      "r21",
      "r26",
      "r53",
      "r59",
      "r60",
      "r61",
      "r62",
      "r63",
      "r68",
      "r70",
      "r71",
      "r119",
      "r920",
      "r921"
     ]
    },
    "us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable",
     "presentation": [
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansStockbasedcompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Share-based Payment Arrangement, Expensed and Capitalized, Amount [Table]",
        "label": "Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Table]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r48"
     ]
    },
    "us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock",
     "presentation": [
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Employee Service Share-based Compensation, Allocation of Recognized Period Costs",
        "label": "Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Table Text Block]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r48"
     ]
    },
    "srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2025",
     "localname": "ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis",
     "presentation": [
      "http://www.westport.com/role/AccountsreceivableNarrativeDetails",
      "http://www.westport.com/role/CompanyorganizationandoperationsDetails",
      "http://www.westport.com/role/LongterminvestmentsScheduleofInvestmentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Investment, Name [Axis]",
        "label": "Investment, Name [Axis]",
        "documentation": "Information by name of investment including named security. Excludes entity that is consolidated."
       }
      }
     },
     "auth_ref": [
      "r314",
      "r315",
      "r317",
      "r459",
      "r499",
      "r864",
      "r865",
      "r866",
      "r960",
      "r961",
      "r962",
      "r963"
     ]
    },
    "us-gaap_ScheduleOfEquityMethodInvestmentsLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ScheduleOfEquityMethodInvestmentsLineItems",
     "presentation": [
      "http://www.westport.com/role/CompanyorganizationandoperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Equity Method Investments [Line Items]",
        "label": "Schedule of Equity Method Investments [Line Items]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r231",
      "r234",
      "r314",
      "r315",
      "r317",
      "r318",
      "r499"
     ]
    },
    "us-gaap_ScheduleOfEquityMethodInvestmentsTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ScheduleOfEquityMethodInvestmentsTable",
     "presentation": [
      "http://www.westport.com/role/CompanyorganizationandoperationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Equity Method Investment [Table]",
        "label": "Equity Method Investment [Table]",
        "documentation": "Disclosure of information about equity method investment. Includes, but is not limited to, name of investee or group of investees, percentage ownership, difference between investment and value of underlying equity in net assets."
       }
      }
     },
     "auth_ref": [
      "r197",
      "r231",
      "r234",
      "r314",
      "r315",
      "r317",
      "r318",
      "r499"
     ]
    },
    "wprt_ScheduleOfForeignCurrencyExchangeRateTranslationTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "ScheduleOfForeignCurrencyExchangeRateTranslationTableTextBlock",
     "presentation": [
      "http://www.westport.com/role/BasisofpreparationTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Foreign Currency Exchange Rate Translation",
        "label": "Schedule Of Foreign Currency Exchange Rate Translation [Table Text Block]",
        "documentation": "Schedule Of Foreign Currency Exchange Rate Translation"
       }
      }
     },
     "auth_ref": []
    },
    "wprt_ScheduleOfForeignCurrencyLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "ScheduleOfForeignCurrencyLineItems",
     "presentation": [
      "http://www.westport.com/role/BasisofpreparationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Foreign Currency [Line Items]",
        "label": "Schedule of Foreign Currency [Line Items]",
        "documentation": "Schedule of Foreign Currency [Line Items]"
       }
      }
     },
     "auth_ref": []
    },
    "wprt_ScheduleOfForeignCurrencyTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "ScheduleOfForeignCurrencyTable",
     "presentation": [
      "http://www.westport.com/role/BasisofpreparationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Foreign Currency [Table]",
        "label": "Schedule of Foreign Currency [Table]",
        "documentation": "Schedule of Foreign Currency [Table]"
       }
      }
     },
     "auth_ref": []
    },
    "wprt_ScheduleOfGeographicalRevenueInformationTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "ScheduleOfGeographicalRevenueInformationTableTextBlock",
     "presentation": [
      "http://www.westport.com/role/SegmentinformationTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Geographical Revenue Information",
        "label": "Schedule Of Geographical Revenue Information [Table Text Block]",
        "documentation": "Tabular disclosure for the company to provide geographical revenue information by individual countries."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ScheduleOfInventoryCurrentTableTextBlock",
     "presentation": [
      "http://www.westport.com/role/InventoriesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Inventories",
        "label": "Schedule of Inventory, Current [Table Text Block]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r10",
      "r93",
      "r94",
      "r95"
     ]
    },
    "us-gaap_ScheduleOfInvestmentsLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ScheduleOfInvestmentsLineItems",
     "presentation": [
      "http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails",
      "http://www.westport.com/role/LongterminvestmentsIncomeStatementDetails",
      "http://www.westport.com/role/LongterminvestmentsScheduleofInvestmentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Investments [Line Items]",
        "label": "Schedule of Investments [Line Items]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r703",
      "r704",
      "r705",
      "r706",
      "r707",
      "r708",
      "r709",
      "r710",
      "r711",
      "r712",
      "r713",
      "r714",
      "r715",
      "r716",
      "r717",
      "r718",
      "r719",
      "r720",
      "r721",
      "r722",
      "r723",
      "r724",
      "r726",
      "r727",
      "r728",
      "r729",
      "r730",
      "r731",
      "r732",
      "r733",
      "r734",
      "r735",
      "r736",
      "r737",
      "r738",
      "r739",
      "r740",
      "r741",
      "r742",
      "r743",
      "r744",
      "r745",
      "r746",
      "r747",
      "r748",
      "r749",
      "r750",
      "r751",
      "r752",
      "r753",
      "r754",
      "r755",
      "r756",
      "r757",
      "r758",
      "r759",
      "r760",
      "r761",
      "r762",
      "r763",
      "r764",
      "r765",
      "r766",
      "r767",
      "r768"
     ]
    },
    "us-gaap_ScheduleOfInvestmentsTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ScheduleOfInvestmentsTable",
     "presentation": [
      "http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails",
      "http://www.westport.com/role/LongterminvestmentsIncomeStatementDetails",
      "http://www.westport.com/role/LongterminvestmentsScheduleofInvestmentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Investments [Table]",
        "label": "Schedule of Investments [Table]",
        "documentation": "Disclosure of information about investments owned by investment company."
       }
      }
     },
     "auth_ref": [
      "r703",
      "r704",
      "r705",
      "r706",
      "r707",
      "r708",
      "r709",
      "r710",
      "r711",
      "r712",
      "r713",
      "r714",
      "r715",
      "r716",
      "r717",
      "r718",
      "r719",
      "r720",
      "r721",
      "r722",
      "r723",
      "r724",
      "r726",
      "r727",
      "r728",
      "r729",
      "r730",
      "r731",
      "r732",
      "r733",
      "r734",
      "r735",
      "r736",
      "r737",
      "r738",
      "r739",
      "r740",
      "r741",
      "r742",
      "r743",
      "r744",
      "r745",
      "r746",
      "r747",
      "r748",
      "r749",
      "r750",
      "r751",
      "r752",
      "r754",
      "r755",
      "r756",
      "r757",
      "r758",
      "r759",
      "r760",
      "r761",
      "r762",
      "r763",
      "r764",
      "r765",
      "r766",
      "r767",
      "r768"
     ]
    },
    "us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ScheduleOfMaturitiesOfLongTermDebtTableTextBlock",
     "presentation": [
      "http://www.westport.com/role/LongtermdebtTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Maturities of Long-term Debt",
        "label": "Schedule of Maturities of Long-Term Debt [Table Text Block]",
        "documentation": "Tabular disclosure of maturity and sinking fund requirement for long-term debt."
       }
      }
     },
     "auth_ref": [
      "r12"
     ]
    },
    "us-gaap_ScheduleOfPropertyPlantAndEquipmentTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ScheduleOfPropertyPlantAndEquipmentTable",
     "presentation": [
      "http://www.westport.com/role/PropertyplantandequipmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Property, Plant and Equipment [Table]",
        "label": "Property, Plant and Equipment [Table]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r11",
      "r530"
     ]
    },
    "us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ScheduleOfRelatedPartyTransactionsByRelatedPartyTable",
     "presentation": [
      "http://www.westport.com/role/RelatedpartytransactionsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Related Party Transaction [Table]",
        "label": "Related Party Transaction [Table]",
        "documentation": "Disclosure of information about related party transaction."
       }
      }
     },
     "auth_ref": [
      "r231",
      "r235",
      "r236",
      "r538",
      "r539",
      "r541",
      "r677",
      "r678",
      "r681"
     ]
    },
    "us-gaap_ScheduleOfRelatedPartyTransactionsTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ScheduleOfRelatedPartyTransactionsTableTextBlock",
     "presentation": [
      "http://www.westport.com/role/RelatedpartytransactionsTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Related Party Transactions",
        "label": "Schedule of Related Party Transactions [Table Text Block]",
        "documentation": "Tabular disclosure of related party transactions. Examples of related party transactions include, but are not limited to, 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."
       }
      }
     },
     "auth_ref": [
      "r976",
      "r977"
     ]
    },
    "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ScheduleOfSegmentReportingInformationBySegmentTable",
     "presentation": [
      "http://www.westport.com/role/SegmentInformationReconciliationofSegmentEBITDAtoLossbeforeincometaxesDetails",
      "http://www.westport.com/role/SegmentinformationAssetsDetails",
      "http://www.westport.com/role/SegmentinformationFinancialinformationbybusinesssegmentDetails",
      "http://www.westport.com/role/SegmentinformationNarrativeDetails",
      "http://www.westport.com/role/SegmentinformationPercentofrevenuebygeographicallocationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Segment Reporting Information, by Segment [Table]",
        "label": "Schedule of Segment Reporting Information, by Segment [Table]",
        "documentation": "Disclosure of information about profit (loss) and total assets by reportable segment."
       }
      }
     },
     "auth_ref": [
      "r38",
      "r39",
      "r40"
     ]
    },
    "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ScheduleOfSegmentReportingInformationBySegmentTextBlock",
     "presentation": [
      "http://www.westport.com/role/SegmentinformationTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Segment Reporting Information",
        "label": "Schedule of Segment Reporting Information, by Segment [Table Text Block]",
        "documentation": "Tabular disclosure of the profit or loss and total assets for each reportable segment. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss."
       }
      }
     },
     "auth_ref": [
      "r38",
      "r39",
      "r40"
     ]
    },
    "wprt_ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardIntrinsicValueTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardIntrinsicValueTableTextBlock",
     "presentation": [
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Schedule of Share Based Compensation Arrangement by Share Based Payment Award Intrinsic Value",
        "label": "Schedule Of Share Based Compensation Arrangement By Share Based Payment Award Intrinsic Value [Table Text Block]",
        "documentation": "Tabular disclosure of the intrinsic value of stock option awards and share units."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable",
     "presentation": [
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansAggregateintrinsicvaluesDetails",
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansNarrativeDetails",
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansShareunitsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]",
        "label": "Schedule of Share-Based Compensation Arrangements by Share-Based Payment Award [Table]",
        "documentation": "Disclosure of information about share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r408",
      "r410",
      "r412",
      "r413",
      "r414",
      "r415",
      "r416",
      "r417",
      "r418",
      "r419",
      "r420",
      "r421",
      "r422",
      "r423",
      "r424",
      "r425",
      "r426",
      "r427",
      "r428",
      "r429",
      "r430",
      "r431",
      "r432",
      "r433",
      "r434",
      "r435",
      "r436",
      "r437",
      "r438",
      "r443"
     ]
    },
    "us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
     "presentation": [
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Share-based Compensation, Stock Options, Activity",
        "label": "Share-Based Payment Arrangement, Option, Activity [Table Text Block]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r19",
      "r20",
      "r125"
     ]
    },
    "us-gaap_ScheduleOfShortTermDebtTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ScheduleOfShortTermDebtTable",
     "presentation": [
      "http://www.westport.com/role/AccountspayableandaccruedliabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Short-Term Debt [Table]",
        "label": "Short-Term Debt [Table]",
        "documentation": "Disclosure of information about short-term debt arrangement. Includes, but is not limited to, description of arrangement, lender, repayment term, weighted-average interest rate, borrowed amount, and description and amount of refinancing of short-term obligation when obligation is excluded from current liability."
       }
      }
     },
     "auth_ref": [
      "r74"
     ]
    },
    "us-gaap_SecuredDebtMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "SecuredDebtMember",
     "presentation": [
      "http://www.westport.com/role/FinancialinstrumentsFinancialObligationsDetails",
      "http://www.westport.com/role/LongtermdebtNarrativeDetails",
      "http://www.westport.com/role/LongtermdebtScheduleofMaturitiesonSeniorFinancingDetails",
      "http://www.westport.com/role/LongtermdebtTermLoanFacilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Secured Debt",
        "verboseLabel": "Term loan facility (note 12)",
        "label": "Secured Debt [Member]",
        "documentation": "Collateralized debt obligation backed by, for example, but not limited to, pledge, mortgage or other lien on the entity's assets."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SegmentDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "SegmentDomain",
     "presentation": [
      "http://www.westport.com/role/SegmentInformationReconciliationofSegmentEBITDAtoLossbeforeincometaxesDetails",
      "http://www.westport.com/role/SegmentInformationTotalassetallocationDetails",
      "http://www.westport.com/role/SegmentinformationAssetsDetails",
      "http://www.westport.com/role/SegmentinformationFinancialinformationbybusinesssegmentDetails",
      "http://www.westport.com/role/SegmentinformationNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Segments [Domain]",
        "label": "Segments [Domain]",
        "documentation": "Components of an entity that engage in business activities from which they may earn revenue and incur expenses, including transactions with other components of the same entity."
       }
      }
     },
     "auth_ref": [
      "r147",
      "r148",
      "r149",
      "r150",
      "r268",
      "r274",
      "r277",
      "r278",
      "r279",
      "r280",
      "r281",
      "r282",
      "r283",
      "r284",
      "r285",
      "r286",
      "r287",
      "r288",
      "r290",
      "r291",
      "r292",
      "r293",
      "r294",
      "r295",
      "r296",
      "r297",
      "r299",
      "r300",
      "r301",
      "r306",
      "r330",
      "r331",
      "r332",
      "r333",
      "r334",
      "r335",
      "r336",
      "r337",
      "r338",
      "r340",
      "r348",
      "r349",
      "r467",
      "r468",
      "r611",
      "r612",
      "r613",
      "r614",
      "r615",
      "r616",
      "r617",
      "r618",
      "r619",
      "r620",
      "r621",
      "r802",
      "r805",
      "r806",
      "r810",
      "r849",
      "r990",
      "r992",
      "r993",
      "r994",
      "r995",
      "r996",
      "r997",
      "r998",
      "r999",
      "r1000",
      "r1001",
      "r1002",
      "r1003",
      "r1004",
      "r1005",
      "r1006",
      "r1007",
      "r1008",
      "r1009",
      "r1010",
      "r1011",
      "r1012",
      "r1013",
      "r1014",
      "r1015",
      "r1016",
      "r1017",
      "r1018",
      "r1019"
     ]
    },
    "wprt_SegmentEarningsBeforeInterestTaxDepreciationAndAmortization": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "SegmentEarningsBeforeInterestTaxDepreciationAndAmortization",
     "crdr": "credit",
     "presentation": [
      "http://www.westport.com/role/SegmentInformationReconciliationofSegmentEBITDAtoLossbeforeincometaxesDetails",
      "http://www.westport.com/role/SegmentinformationFinancialinformationbybusinesssegmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Segment EBITDA",
        "label": "Segment Earnings Before Interest Tax Depreciation And Amortization",
        "documentation": "Segment Earnings Before Interest Tax Depreciation And Amortization"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SegmentExpenditureAdditionToLongLivedAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "SegmentExpenditureAdditionToLongLivedAssets",
     "crdr": "debit",
     "presentation": [
      "http://www.westport.com/role/SegmentinformationAssetsDetails",
      "http://www.westport.com/role/SegmentinformationNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Total consolidated",
        "label": "Segment, Expenditure, Addition to Long-Lived Assets",
        "documentation": "Amount of expenditure for addition to long-lived assets included in determination of segment assets by chief operating decision maker (CODM) or otherwise regularly provided to CODM. Excludes expenditure for addition to financial instrument, long-term customer relationship of financial institution, mortgage and other servicing rights, deferred policy acquisition cost, and deferred tax assets."
       }
      }
     },
     "auth_ref": [
      "r268",
      "r288",
      "r299",
      "r805",
      "r806"
     ]
    },
    "srt_SegmentGeographicalDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2025",
     "localname": "SegmentGeographicalDomain",
     "presentation": [
      "http://www.westport.com/role/SegmentinformationPercentofrevenuebygeographicallocationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Geographical [Domain]",
        "label": "Geographical [Domain]",
        "documentation": "Geographical area."
       }
      }
     },
     "auth_ref": [
      "r163",
      "r164",
      "r165",
      "r166",
      "r167",
      "r168",
      "r169",
      "r170",
      "r171",
      "r172",
      "r173",
      "r174",
      "r175",
      "r176",
      "r177",
      "r178",
      "r272",
      "r304",
      "r305",
      "r545",
      "r547",
      "r548",
      "r549",
      "r550",
      "r551",
      "r552",
      "r553",
      "r554",
      "r555",
      "r556",
      "r557",
      "r558",
      "r559",
      "r560",
      "r561",
      "r562",
      "r563",
      "r564",
      "r565",
      "r566",
      "r569",
      "r570",
      "r571",
      "r572",
      "r573",
      "r574",
      "r575",
      "r576",
      "r577",
      "r578",
      "r579",
      "r580",
      "r581",
      "r585",
      "r586",
      "r587",
      "r588",
      "r642",
      "r643",
      "r644",
      "r712",
      "r725",
      "r746",
      "r765",
      "r769",
      "r770",
      "r771",
      "r772",
      "r775",
      "r776",
      "r777",
      "r778",
      "r779",
      "r780",
      "r781",
      "r782",
      "r783",
      "r786",
      "r796",
      "r817",
      "r818",
      "r837",
      "r838",
      "r839",
      "r840",
      "r842",
      "r844",
      "r845",
      "r846",
      "r848",
      "r854",
      "r990",
      "r992",
      "r993",
      "r995",
      "r996",
      "r997",
      "r998",
      "r999",
      "r1000",
      "r1001",
      "r1002",
      "r1003",
      "r1004",
      "r1005",
      "r1006",
      "r1007",
      "r1008",
      "r1009",
      "r1010",
      "r1011",
      "r1012",
      "r1013",
      "r1014",
      "r1015",
      "r1016",
      "r1017",
      "r1018",
      "r1019"
     ]
    },
    "us-gaap_SegmentReportingAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "SegmentReportingAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Segment Reporting [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SegmentReportingAssetReconcilingItemLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "SegmentReportingAssetReconcilingItemLineItems",
     "presentation": [
      "http://www.westport.com/role/SegmentInformationTotalassetallocationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Segment Reporting, Asset Reconciling Item [Line Items]",
        "label": "Segment Reporting, Asset Reconciling Item [Line Items]",
        "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."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SegmentReportingDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "SegmentReportingDisclosureTextBlock",
     "presentation": [
      "http://www.westport.com/role/Segmentinformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Segment information",
        "label": "Segment Reporting Disclosure [Text Block]",
        "documentation": "The entire disclosure for reporting segments including data and tables. Reportable segments include those that meet any of the following quantitative thresholds a) it's reported revenue, including sales to external customers and intersegment sales or transfers is 10 percent or more of the combined revenue, internal and external, of all operating segments b) the absolute amount of its reported profit or loss is 10 percent or more of the greater, in absolute amount of 1) the combined reported profit of all operating segments that did not report a loss or 2) the combined reported loss of all operating segments that did report a loss c) its assets are 10 percent or more of the combined assets of all operating segments."
       }
      }
     },
     "auth_ref": [
      "r150",
      "r268",
      "r273",
      "r274",
      "r275",
      "r276",
      "r277",
      "r289",
      "r291",
      "r292",
      "r297",
      "r298",
      "r299",
      "r300",
      "r301",
      "r302",
      "r303",
      "r306",
      "r801",
      "r803",
      "r804",
      "r805",
      "r807",
      "r808",
      "r809"
     ]
    },
    "us-gaap_SegmentReportingInformationLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "SegmentReportingInformationLineItems",
     "presentation": [
      "http://www.westport.com/role/SegmentInformationReconciliationofSegmentEBITDAtoLossbeforeincometaxesDetails",
      "http://www.westport.com/role/SegmentinformationAssetsDetails",
      "http://www.westport.com/role/SegmentinformationFinancialinformationbybusinesssegmentDetails",
      "http://www.westport.com/role/SegmentinformationNarrativeDetails",
      "http://www.westport.com/role/SegmentinformationPercentofrevenuebygeographicallocationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Segment Reporting Information [Line Items]",
        "label": "Segment Reporting Information [Line Items]",
        "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."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SellingAndMarketingExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "SellingAndMarketingExpense",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited": {
       "parentTag": "us-gaap_CostsAndExpenses",
       "weight": 1.0,
       "order": 3.0
      },
      "http://www.westport.com/role/SegmentinformationFinancialinformationbybusinesssegmentDetails": {
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited",
      "http://www.westport.com/role/LongterminvestmentsIncomeStatementDetails",
      "http://www.westport.com/role/SegmentinformationFinancialinformationbybusinesssegmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Sales and marketing",
        "label": "Selling and Marketing Expense",
        "documentation": "The aggregate total amount of expenses directly related to the marketing or selling of products or services."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SellingAndMarketingExpenseMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "SellingAndMarketingExpenseMember",
     "presentation": [
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansStockbasedcompensationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Sales and marketing",
        "label": "Selling and Marketing Expense [Member]",
        "documentation": "Primary financial statement caption encompassing selling and marketing expense."
       }
      }
     },
     "auth_ref": [
      "r106"
     ]
    },
    "us-gaap_ShareBasedCompensation": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ShareBasedCompensation",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Stock-based compensation expense",
        "label": "Share-Based Payment Arrangement, Noncash Expense",
        "documentation": "Amount of noncash expense for share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r8"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1",
     "presentation": [
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Vesting period (in years)",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Period",
        "documentation": "Period over which grantee's right to exercise award under share-based payment arrangement is no longer contingent on satisfaction of service or performance condition, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, combination of market, performance or service condition."
       }
      }
     },
     "auth_ref": [
      "r821"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward",
     "presentation": [
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansShareunitsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Number\u00a0of Units",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number of Shares [Roll Forward]",
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period."
       }
      }
     },
     "auth_ref": []
    },
    "wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingAndExercisableNumber": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingAndExercisableNumber",
     "presentation": [
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansShareunitsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Units outstanding and exercisable, end of period (in shares)",
        "label": "Share Based Compensation Arrangement by Share Based Payment Award Equity Instruments Other than Options Outstanding and Exercisable Number",
        "documentation": "Number of equity instruments other than options outstanding and exercisable, including both vested and non-vested instruments."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems",
     "presentation": [
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansAggregateintrinsicvaluesDetails",
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansNarrativeDetails",
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansShareunitsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award [Line Items]",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r408",
      "r410",
      "r412",
      "r413",
      "r414",
      "r415",
      "r416",
      "r417",
      "r418",
      "r419",
      "r420",
      "r421",
      "r422",
      "r423",
      "r424",
      "r425",
      "r426",
      "r427",
      "r428",
      "r429",
      "r430",
      "r431",
      "r432",
      "r433",
      "r434",
      "r435",
      "r436",
      "r437",
      "r438",
      "r443"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised",
     "presentation": [
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansShareunitsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedTerseLabel": "Vested and exercised (in shares)",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Non-Option Equity Instruments, Exercised",
        "documentation": "Number of non-option equity instruments exercised by participants."
       }
      }
     },
     "auth_ref": [
      "r18"
     ]
    },
    "wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercisedWeightedAverageGrantDateFairValue": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercisedWeightedAverageGrantDateFairValue",
     "presentation": [
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansShareunitsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Vested and exercised (in Canadian dollars per share)",
        "label": "Share Based Compensation Arrangement by Share Based Payment Award Non Option Equity Instruments Exercised Weighted Average Grant Date Fair Value",
        "documentation": "Weighted average grant-date fair value of non-option equity instruments exercised."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirations": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirations",
     "presentation": [
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansShareunitsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Forfeited/expired (in shares)",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Non-Option Equity Instruments, Forfeitures and Expirations",
        "documentation": "Number of shares under non-option equity instrument agreements that were either cancelled or expired."
       }
      }
     },
     "auth_ref": [
      "r128",
      "r129"
     ]
    },
    "wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirationsWeightedAverageGrantDateFairValue": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirationsWeightedAverageGrantDateFairValue",
     "presentation": [
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansShareunitsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Forfeited/expired (in Canadian dollars per share)",
        "label": "Share Based Compensation Arrangement by Share Based Payment Award, Non Option Equity Instruments, Forfeitures and Expirations, Weighted Average Grant Date Fair Value",
        "documentation": "Weighted average grant-date fair value of non-option equity instruments cancelled/expired."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted",
     "presentation": [
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansNarrativeDetails",
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansShareunitsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Granted (in shares)",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Non-Option Equity Instruments, Granted",
        "documentation": "Net number of non-option equity instruments granted to participants."
       }
      }
     },
     "auth_ref": [
      "r17"
     ]
    },
    "wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGrantedWeightedAverageGrantDateFairValue": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGrantedWeightedAverageGrantDateFairValue",
     "presentation": [
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansShareunitsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Granted (in Canadian dollars per share)",
        "label": "Share Based Compensation Arrangement by Share Based Payment Award Non Option Equity Instruments Granted Weighted Average Grant Date Fair Value",
        "documentation": "The weighted average grant date fair value of non option equity instruments granted during the period."
       }
      }
     },
     "auth_ref": []
    },
    "wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingAndExercisableWeightedAverageGrantDateFairValue": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingAndExercisableWeightedAverageGrantDateFairValue",
     "presentation": [
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansShareunitsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Units outstanding and exercisable, end of period (in Canadian dollars per share)",
        "label": "Share Based Compensation Arrangement by Share Based Payment Award Non Option Equity Instruments Outstanding and Exercisable Weighted Average Grant Date Fair Value",
        "documentation": "Weighted average grant-date fair value of non-option equity instruments outstanding and exercisable."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber",
     "presentation": [
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansShareunitsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodStartLabel": "Outstanding, beginning of period (in shares)",
        "periodEndLabel": "Outstanding, end of period (in shares)",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Non-Option Equity Instruments, Outstanding, Number",
        "documentation": "Number of equity instruments other than options outstanding, including both vested and non-vested instruments."
       }
      }
     },
     "auth_ref": [
      "r126",
      "r127"
     ]
    },
    "wprt_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingWeightedAverageGrantDateFairValue": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingWeightedAverageGrantDateFairValue",
     "presentation": [
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansShareunitsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodStartLabel": "Outstanding, beginning of period (in Canadian dollars per share)",
        "periodEndLabel": "Outstanding, end of period (in Canadian dollars per share)",
        "label": "Share Based Compensation Arrangement by Share Based Payment Award Non Option Equity Instruments Outstanding Weighted Average Grant Date Fair Value",
        "documentation": "Weighted average grant-date fair value of non-option equity instruments outstanding."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract",
     "presentation": [
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansShareunitsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Weighted average grant date\u00a0fair value (CDN\u00a0$)",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Additional Disclosures [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue",
     "crdr": "debit",
     "presentation": [
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansAggregateintrinsicvaluesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Exercised",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercises in Period, Intrinsic Value",
        "documentation": "Amount of accumulated difference between fair value of underlying shares on dates of exercise and exercise price on options exercised (or share units converted) into shares."
       }
      }
     },
     "auth_ref": [
      "r430"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue",
     "crdr": "debit",
     "presentation": [
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansAggregateintrinsicvaluesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Outstanding",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Intrinsic Value",
        "documentation": "Amount by which the current fair value of the underlying stock exceeds the exercise price of options outstanding."
       }
      }
     },
     "auth_ref": [
      "r46"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain",
     "presentation": [
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansAggregateintrinsicvaluesDetails",
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansNarrativeDetails",
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansShareunitsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Award Type [Domain]",
        "label": "Award Type [Domain]",
        "documentation": "Award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r412",
      "r413",
      "r414",
      "r415",
      "r416",
      "r417",
      "r418",
      "r419",
      "r420",
      "r421",
      "r422",
      "r423",
      "r424",
      "r425",
      "r426",
      "r427",
      "r428",
      "r429",
      "r430",
      "r431",
      "r432",
      "r434",
      "r435",
      "r436",
      "r437",
      "r438"
     ]
    },
    "wprt_ShareBasedPaymentArrangementExpenseSettledInCash": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "ShareBasedPaymentArrangementExpenseSettledInCash",
     "crdr": "debit",
     "presentation": [
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Stock-based compensation settled in cash",
        "label": "Share-Based Payment Arrangement, Expense, Settled In Cash",
        "documentation": "Share-Based Payment Arrangement, Expense, Settled In Cash"
       }
      }
     },
     "auth_ref": []
    },
    "wprt_ShareBasedPaymentArrangementExpenseSettledInShares": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "ShareBasedPaymentArrangementExpenseSettledInShares",
     "crdr": "debit",
     "presentation": [
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Stock-based compensation settled in shares",
        "label": "Share-Based Payment Arrangement, Expense, Settled In Shares",
        "documentation": "Share-Based Payment Arrangement, Expense, Settled In Shares"
       }
      }
     },
     "auth_ref": []
    },
    "wprt_ShareUnitsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "ShareUnitsMember",
     "presentation": [
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansAggregateintrinsicvaluesDetails",
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansNarrativeDetails",
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansShareunitsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Share units",
        "label": "Share units [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1",
     "crdr": "debit",
     "presentation": [
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansAggregateintrinsicvaluesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Exercisable",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercisable, Intrinsic Value",
        "documentation": "Amount of difference between fair value of the underlying shares reserved for issuance and exercise price of vested portions of options outstanding and currently exercisable."
       }
      }
     },
     "auth_ref": [
      "r46"
     ]
    },
    "us-gaap_ShortTermBorrowings": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ShortTermBorrowings",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/LongterminvestmentsBalanceSheetDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Current portion of provisions",
        "label": "Short-Term Debt",
        "documentation": "Reflects the total carrying amount as of the balance sheet date of debt having initial terms less than one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r73",
      "r135",
      "r835",
      "r986"
     ]
    },
    "us-gaap_ShortTermDebtLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ShortTermDebtLineItems",
     "presentation": [
      "http://www.westport.com/role/AccountspayableandaccruedliabilitiesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Short-Term Debt [Line Items]",
        "label": "Short-Term Debt [Line Items]",
        "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."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShortTermDebtTypeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ShortTermDebtTypeAxis",
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Short-term Debt, Type [Axis]",
        "label": "Short-Term Debt, Type [Axis]",
        "documentation": "Information by type of short-term debt arrangement."
       }
      }
     },
     "auth_ref": [
      "r74",
      "r923",
      "r924",
      "r925"
     ]
    },
    "us-gaap_ShortTermDebtTypeDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "ShortTermDebtTypeDomain",
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Short-term Debt, Type [Domain]",
        "label": "Short-Term Debt, Type [Domain]",
        "documentation": "Type of short-term debt arrangement, such as notes, line of credit, commercial paper, asset-based financing, project financing, letter of credit financing."
       }
      }
     },
     "auth_ref": [
      "r73",
      "r923",
      "r924",
      "r925"
     ]
    },
    "us-gaap_StatementBusinessSegmentsAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "StatementBusinessSegmentsAxis",
     "presentation": [
      "http://www.westport.com/role/SegmentInformationReconciliationofSegmentEBITDAtoLossbeforeincometaxesDetails",
      "http://www.westport.com/role/SegmentInformationTotalassetallocationDetails",
      "http://www.westport.com/role/SegmentinformationAssetsDetails",
      "http://www.westport.com/role/SegmentinformationFinancialinformationbybusinesssegmentDetails",
      "http://www.westport.com/role/SegmentinformationNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Segments [Axis]",
        "label": "Segments [Axis]",
        "documentation": "Information by business segments."
       }
      }
     },
     "auth_ref": [
      "r147",
      "r148",
      "r149",
      "r150",
      "r195",
      "r268",
      "r274",
      "r277",
      "r278",
      "r279",
      "r280",
      "r281",
      "r282",
      "r283",
      "r284",
      "r285",
      "r286",
      "r287",
      "r288",
      "r290",
      "r291",
      "r292",
      "r293",
      "r294",
      "r295",
      "r296",
      "r297",
      "r299",
      "r300",
      "r301",
      "r306",
      "r330",
      "r331",
      "r332",
      "r333",
      "r334",
      "r335",
      "r336",
      "r337",
      "r338",
      "r340",
      "r343",
      "r348",
      "r349",
      "r467",
      "r468",
      "r611",
      "r612",
      "r613",
      "r614",
      "r615",
      "r616",
      "r617",
      "r618",
      "r619",
      "r620",
      "r621",
      "r802",
      "r805",
      "r806",
      "r810",
      "r849",
      "r990",
      "r992",
      "r993",
      "r994",
      "r995",
      "r996",
      "r997",
      "r998",
      "r999",
      "r1000",
      "r1001",
      "r1002",
      "r1003",
      "r1004",
      "r1005",
      "r1006",
      "r1007",
      "r1008",
      "r1009",
      "r1010",
      "r1011",
      "r1012",
      "r1013",
      "r1014",
      "r1015",
      "r1016",
      "r1017",
      "r1018",
      "r1019"
     ]
    },
    "us-gaap_StatementEquityComponentsAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "StatementEquityComponentsAxis",
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofShareholdersEquityunaudited",
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Equity Components [Axis]",
        "label": "Equity Components [Axis]",
        "documentation": "Information by component of equity."
       }
      }
     },
     "auth_ref": [
      "r16",
      "r85",
      "r89",
      "r90",
      "r189",
      "r191",
      "r192",
      "r218",
      "r219",
      "r220",
      "r238",
      "r239",
      "r240",
      "r244",
      "r252",
      "r254",
      "r256",
      "r269",
      "r320",
      "r323",
      "r341",
      "r386",
      "r396",
      "r444",
      "r455",
      "r456",
      "r460",
      "r461",
      "r462",
      "r466",
      "r469",
      "r470",
      "r480",
      "r481",
      "r482",
      "r483",
      "r484",
      "r486",
      "r487",
      "r488",
      "r489",
      "r490",
      "r492",
      "r509",
      "r510",
      "r511",
      "r512",
      "r513",
      "r514",
      "r519",
      "r521",
      "r532",
      "r606",
      "r624",
      "r625",
      "r626",
      "r639",
      "r697"
     ]
    },
    "srt_StatementGeographicalAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2025",
     "localname": "StatementGeographicalAxis",
     "presentation": [
      "http://www.westport.com/role/SegmentinformationPercentofrevenuebygeographicallocationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Geographical [Axis]",
        "label": "Geographical [Axis]",
        "documentation": "Information by geographical components."
       }
      }
     },
     "auth_ref": [
      "r163",
      "r164",
      "r165",
      "r166",
      "r167",
      "r168",
      "r169",
      "r170",
      "r171",
      "r172",
      "r173",
      "r174",
      "r175",
      "r176",
      "r177",
      "r178",
      "r272",
      "r304",
      "r305",
      "r545",
      "r547",
      "r548",
      "r549",
      "r550",
      "r551",
      "r552",
      "r553",
      "r554",
      "r555",
      "r556",
      "r557",
      "r558",
      "r559",
      "r560",
      "r561",
      "r562",
      "r563",
      "r564",
      "r565",
      "r566",
      "r569",
      "r570",
      "r571",
      "r572",
      "r573",
      "r574",
      "r575",
      "r576",
      "r577",
      "r578",
      "r579",
      "r580",
      "r581",
      "r585",
      "r586",
      "r587",
      "r588",
      "r642",
      "r643",
      "r644",
      "r712",
      "r725",
      "r746",
      "r765",
      "r769",
      "r770",
      "r771",
      "r772",
      "r775",
      "r776",
      "r777",
      "r778",
      "r779",
      "r780",
      "r781",
      "r782",
      "r783",
      "r786",
      "r796",
      "r817",
      "r818",
      "r837",
      "r838",
      "r839",
      "r840",
      "r842",
      "r844",
      "r845",
      "r846",
      "r848",
      "r854",
      "r990",
      "r992",
      "r993",
      "r995",
      "r996",
      "r997",
      "r998",
      "r999",
      "r1000",
      "r1001",
      "r1002",
      "r1003",
      "r1004",
      "r1005",
      "r1006",
      "r1007",
      "r1008",
      "r1009",
      "r1010",
      "r1011",
      "r1012",
      "r1013",
      "r1014",
      "r1015",
      "r1016",
      "r1017",
      "r1018",
      "r1019"
     ]
    },
    "us-gaap_StatementLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "StatementLineItems",
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofShareholdersEquityunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Statement [Line Items]",
        "label": "Statement [Line Items]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r238",
      "r239",
      "r240",
      "r269",
      "r388",
      "r389",
      "r391",
      "r393",
      "r521",
      "r544",
      "r634",
      "r640",
      "r641",
      "r645",
      "r646",
      "r647",
      "r648",
      "r649",
      "r650",
      "r653",
      "r656",
      "r657",
      "r658",
      "r659",
      "r660",
      "r662",
      "r663",
      "r664",
      "r665",
      "r668",
      "r669",
      "r670",
      "r671",
      "r672",
      "r675",
      "r676",
      "r682",
      "r683",
      "r684",
      "r685",
      "r686",
      "r687",
      "r688",
      "r689",
      "r690",
      "r691",
      "r692",
      "r693",
      "r697",
      "r793",
      "r794",
      "r855",
      "r1021"
     ]
    },
    "us-gaap_StatementOfCashFlowsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "StatementOfCashFlowsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Cash Flows [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StatementOfFinancialPositionAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "StatementOfFinancialPositionAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Financial Position [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StatementOfStockholdersEquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "StatementOfStockholdersEquityAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Stockholders' Equity [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "srt_StatementScenarioAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2025",
     "localname": "StatementScenarioAxis",
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Scenario [Axis]",
        "label": "Scenario [Axis]",
        "documentation": "Information by scenario reported, distinguishing information from actual fact. Includes, but is not limited to, pro forma and forecast. Excludes actual facts."
       }
      }
     },
     "auth_ref": [
      "r188",
      "r193",
      "r194",
      "r257",
      "r406",
      "r863",
      "r867"
     ]
    },
    "us-gaap_StatementTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "StatementTable",
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofShareholdersEquityunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Statement [Table]",
        "label": "Statement [Table]",
        "documentation": "Presentation of information about comprehensive income, income, other comprehensive income, financial position, cash flows, and shareholders' equity."
       }
      }
     },
     "auth_ref": [
      "r238",
      "r239",
      "r240",
      "r269",
      "r308",
      "r388",
      "r389",
      "r391",
      "r393",
      "r521",
      "r544",
      "r634",
      "r640",
      "r641",
      "r645",
      "r646",
      "r647",
      "r648",
      "r649",
      "r650",
      "r653",
      "r656",
      "r657",
      "r658",
      "r659",
      "r660",
      "r662",
      "r663",
      "r664",
      "r665",
      "r668",
      "r669",
      "r670",
      "r671",
      "r672",
      "r675",
      "r676",
      "r682",
      "r683",
      "r684",
      "r685",
      "r686",
      "r687",
      "r688",
      "r689",
      "r690",
      "r691",
      "r692",
      "r693",
      "r697",
      "r793",
      "r794",
      "r855",
      "r1021"
     ]
    },
    "us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "StockIssuedDuringPeriodSharesShareBasedCompensation",
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofShareholdersEquityunaudited",
      "http://www.westport.com/role/SharecapitalstockoptionsandotherstockbasedplansNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Issuance of common shares on exercise of share units (in shares)",
        "label": "Shares Issued, Shares, Share-Based Payment Arrangement, after Forfeiture",
        "documentation": "Number, after forfeiture, of shares or units issued under share-based payment arrangement. Excludes shares or units issued under employee stock ownership plan (ESOP)."
       }
      }
     },
     "auth_ref": [
      "r16",
      "r84",
      "r85",
      "r124"
     ]
    },
    "us-gaap_StockIssuedDuringPeriodSharesTreasuryStockReissued": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "StockIssuedDuringPeriodSharesTreasuryStockReissued",
     "presentation": [
      "http://www.westport.com/role/LiquidityandGoingConcernDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Treasury stock reissued (in shares)",
        "label": "Stock Issued During Period, Shares, Treasury Stock Reissued",
        "documentation": "Number of treasury shares or units reissued. Excludes reissuance of shares or units in treasury for award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r16",
      "r85",
      "r124"
     ]
    },
    "us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "StockIssuedDuringPeriodValueShareBasedCompensation",
     "crdr": "credit",
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofShareholdersEquityunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Issuance of common shares on exercise of share units",
        "label": "Shares Issued, Value, Share-Based Payment Arrangement, after Forfeiture",
        "documentation": "Value, after forfeiture, of shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP)."
       }
      }
     },
     "auth_ref": [
      "r47",
      "r84",
      "r85",
      "r124"
     ]
    },
    "us-gaap_StockholdersEquity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "StockholdersEquity",
     "crdr": "credit",
     "calculation": {
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited": {
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited",
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofShareholdersEquityunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total shareholders' equity",
        "periodStartLabel": "Balance",
        "periodEndLabel": "Balance",
        "label": "Equity, Attributable to Parent",
        "documentation": "Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest."
       }
      }
     },
     "auth_ref": [
      "r85",
      "r89",
      "r90",
      "r114",
      "r655",
      "r673",
      "r698",
      "r699",
      "r835",
      "r861",
      "r889",
      "r892",
      "r893",
      "r915",
      "r969",
      "r1023"
     ]
    },
    "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract",
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimBalanceSheetsunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Shareholders\u2019 equity:",
        "label": "Equity, Including Portion Attributable to Noncontrolling Interest [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SubsequentEventMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "SubsequentEventMember",
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsNarrativeDetails",
      "http://www.westport.com/role/LiquidityandGoingConcernDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Subsequent Event",
        "label": "Subsequent Event [Member]",
        "documentation": "Identifies event that occurred after the balance sheet date but before financial statements are issued or available to be issued."
       }
      }
     },
     "auth_ref": [
      "r515",
      "r543"
     ]
    },
    "us-gaap_SubsequentEventTypeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "SubsequentEventTypeAxis",
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsNarrativeDetails",
      "http://www.westport.com/role/LiquidityandGoingConcernDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Subsequent Event Type [Axis]",
        "label": "Subsequent Event Type [Axis]",
        "documentation": "Information by event that occurred after the balance sheet date but before financial statements are issued or available to be issued."
       }
      }
     },
     "auth_ref": [
      "r515",
      "r543"
     ]
    },
    "us-gaap_SubsequentEventTypeDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "SubsequentEventTypeDomain",
     "presentation": [
      "http://www.westport.com/role/HeldforsaledisposalgroupanddiscontinuedoperationsNarrativeDetails",
      "http://www.westport.com/role/LiquidityandGoingConcernDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Subsequent Event Type [Domain]",
        "label": "Subsequent Event Type [Domain]",
        "documentation": "Event that occurred after the balance sheet date but before financial statements are issued or available to be issued."
       }
      }
     },
     "auth_ref": [
      "r515",
      "r543"
     ]
    },
    "us-gaap_SubstantialDoubtAboutGoingConcernTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "SubstantialDoubtAboutGoingConcernTextBlock",
     "presentation": [
      "http://www.westport.com/role/LiquidityandGoingConcern"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Liquidity and going concern",
        "label": "Substantial Doubt about Going Concern [Text Block]",
        "documentation": "The entire disclosure when substantial doubt is raised about the ability to continue as a going concern. Includes, but is not limited to, principal conditions or events that raised substantial doubt about the ability to continue as a going concern, management's evaluation of the significance of those conditions or events in relation to the ability to meet its obligations, and management's plans that alleviated or are intended to mitigate the conditions or events that raise substantial doubt about the ability to continue as a going concern."
       }
      }
     },
     "auth_ref": [
      "r72"
     ]
    },
    "us-gaap_SupplementalCashFlowInformationAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "SupplementalCashFlowInformationAbstract",
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofCashFlowsunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Supplementary information",
        "label": "Supplemental Cash Flow Information [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "wprt_TradeAccountsReceivable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.westport.com/20250630",
     "localname": "TradeAccountsReceivable",
     "crdr": "debit",
     "calculation": {
      "http://www.westport.com/role/AccountsreceivableScheduleofAccountsReceivableDetails": {
       "parentTag": "us-gaap_AccountsReceivableNetCurrent",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.westport.com/role/AccountsreceivableScheduleofAccountsReceivableDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Customer trade receivables",
        "label": "Trade Accounts Receivable",
        "documentation": "The amount of receivables that are derived from customers."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "WeightedAverageNumberOfDilutedSharesOutstanding",
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Diluted (in shares)",
        "label": "Weighted Average Number of Shares Outstanding, Diluted",
        "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."
       }
      }
     },
     "auth_ref": [
      "r260",
      "r266"
     ]
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "WeightedAverageNumberOfSharesOutstandingAbstract",
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Weighted average common shares outstanding:",
        "label": "Weighted Average Number of Shares Outstanding, Diluted [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2025",
     "localname": "WeightedAverageNumberOfSharesOutstandingBasic",
     "presentation": [
      "http://www.westport.com/role/CondensedConsolidatedInterimStatementsofOperationsandComprehensiveIncomeLossunaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Basic (in shares)",
        "label": "Weighted Average Number of Shares Outstanding, Basic",
        "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."
       }
      }
     },
     "auth_ref": [
      "r259",
      "r266"
     ]
    }
   }
  }
 },
 "std_ref": {
  "r0": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "SubTopic": "230",
   "Topic": "830",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477401/830-230-45-1"
  },
  "r1": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "10",
   "SubTopic": "20",
   "Topic": "205",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483475/205-20-45-10"
  },
  "r2": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "10A",
   "SubTopic": "10",
   "Topic": "220",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-10A"
  },
  "r3": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "11",
   "SubTopic": "10",
   "Topic": "360",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482130/360-10-45-11"
  },
  "r4": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1B",
   "Subparagraph": "(a)",
   "SubTopic": "20",
   "Topic": "205",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483475/205-20-45-1B"
  },
  "r5": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1B",
   "Subparagraph": "(b)",
   "SubTopic": "20",
   "Topic": "205",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483475/205-20-45-1B"
  },
  "r6": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1D",
   "SubTopic": "20",
   "Topic": "205",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483475/205-20-45-1D"
  },
  "r7": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "20",
   "SubTopic": "10",
   "Topic": "810",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481231/810-10-45-20"
  },
  "r8": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28",
   "Subparagraph": "(a)",
   "SubTopic": "10",
   "Topic": "230",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-28"
  },
  "r9": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28",
   "Subparagraph": "(b)",
   "SubTopic": "10",
   "Topic": "230",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-28"
  },
  "r10": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "SubTopic": "10",
   "Topic": "210",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483489/210-10-50-1"
  },
  "r11": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "SubTopic": "10",
   "Topic": "360",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-1"
  },
  "r12": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "SubTopic": "10",
   "Topic": "470",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-1"
  },
  "r13": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "SubTopic": "20",
   "Topic": "205",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483499/205-20-50-1"
  },
  "r14": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "SubTopic": "30",
   "Topic": "205",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479910/205-30-50-1"
  },
  "r15": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1A",
   "Subparagraph": "(c)(3)",
   "SubTopic": "10",
   "Topic": "810",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-1A"
  },
  "r16": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "SubTopic": "10",
   "Topic": "505",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-2"
  },
  "r17": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(01)",
   "SubTopic": "10",
   "Topic": "718",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r18": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(02)",
   "SubTopic": "10",
   "Topic": "718",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r19": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)",
   "SubTopic": "10",
   "Topic": "718",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r20": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(e)",
   "SubTopic": "10",
   "Topic": "718",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r21": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "SubTopic": "10",
   "Topic": "360",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-3"
  },
  "r22": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "SubTopic": "10",
   "Topic": "280",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-4"
  },
  "r23": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(22))",
   "SubTopic": "10",
   "Topic": "210",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r24": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "205",
   "SubTopic": "20",
   "Section": "45",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483475/205-20-45-6"
  },
  "r25": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "205",
   "SubTopic": "20",
   "Section": "45",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483475/205-20-45-7"
  },
  "r26": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "205",
   "SubTopic": "20",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483499/205-20-50-3"
  },
  "r27": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "205",
   "SubTopic": "20",
   "Section": "S99",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480781/205-20-S99-3"
  },
  "r28": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-8"
  },
  "r29": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "220",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "14",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-14"
  },
  "r30": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "220",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "14A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-14A"
  },
  "r31": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "220",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-5"
  },
  "r32": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-12"
  },
  "r33": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "12",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-12"
  },
  "r34": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "13",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-13"
  },
  "r35": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "14",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-14"
  },
  "r36": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-4"
  },
  "r37": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-2"
  },
  "r38": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "280",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "22",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22"
  },
  "r39": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "280",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "25",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-25"
  },
  "r40": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "280",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "30",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30"
  },
  "r41": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "280",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30"
  },
  "r42": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "280",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "31",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-31"
  },
  "r43": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "360",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-1"
  },
  "r44": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "505",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-3"
  },
  "r45": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "505",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-8"
  },
  "r46": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "718",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r47": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "718",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r48": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "718",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(h)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r49": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "810",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "18",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481231/810-10-45-18"
  },
  "r50": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "810",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-1B"
  },
  "r51": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "942",
   "SubTopic": "470",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477734/942-470-50-3"
  },
  "r52": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/205-20/tableOfContent"
  },
  "r53": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483475/205-20-45-11"
  },
  "r54": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483475/205-20-45-3"
  },
  "r55": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "3A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483475/205-20-45-3A"
  },
  "r56": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "3B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483475/205-20-45-3B"
  },
  "r57": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483475/205-20-45-4"
  },
  "r58": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483499/205-20-50-1"
  },
  "r59": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483499/205-20-50-3A"
  },
  "r60": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483499/205-20-50-4A"
  },
  "r61": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483499/205-20-50-4B"
  },
  "r62": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483499/205-20-50-5A"
  },
  "r63": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483499/205-20-50-5B"
  },
  "r64": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483499/205-20-50-5B"
  },
  "r65": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5B",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483499/205-20-50-5B"
  },
  "r66": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5B",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483499/205-20-50-5B"
  },
  "r67": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5B",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483499/205-20-50-5B"
  },
  "r68": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5C",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483499/205-20-50-5C"
  },
  "r69": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5C",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483499/205-20-50-5C"
  },
  "r70": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5D",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483499/205-20-50-5D"
  },
  "r71": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483499/205-20-50-7"
  },
  "r72": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/205-40/tableOfContent"
  },
  "r73": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(19)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r74": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(19))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r75": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(20))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r76": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(21))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r77": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(22)(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r78": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(23))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r79": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(24))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r80": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(25))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r81": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(26)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r82": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(26)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r83": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(26))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r84": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(28))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r85": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(29))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r86": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r87": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(30)(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r88": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(30)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r89": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(30))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r90": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(31))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r91": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(32))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r92": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r93": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r94": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r95": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r96": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-11"
  },
  "r97": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r98": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(10))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r99": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(12))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r100": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(13))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r101": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(14))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r102": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(2)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r103": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(2)(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r104": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r105": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(20))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r106": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r107": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(8))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r108": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r109": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "13",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-13"
  },
  "r110": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "15",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-15"
  },
  "r111": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "24",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-24"
  },
  "r112": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "25",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-25"
  },
  "r113": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-28"
  },
  "r114": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SAB Topic 4.E)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480418/310-10-S99-2"
  },
  "r115": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "360",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/360/tableOfContent"
  },
  "r116": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482130/360-10-45-9"
  },
  "r117": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-1"
  },
  "r118": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-3"
  },
  "r119": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-3A"
  },
  "r120": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "440",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/440/tableOfContent"
  },
  "r121": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "470",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/470/tableOfContent"
  },
  "r122": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-6"
  },
  "r123": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-7"
  },
  "r124": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.3-04)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480008/505-10-S99-1"
  },
  "r125": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r126": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r127": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r128": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(03)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r129": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(04)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r130": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "19",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481231/810-10-45-19"
  },
  "r131": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "5",
   "Subparagraph": "(SAB Topic 5.E)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479836/810-10-S99-5"
  },
  "r132": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(1)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r133": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(10))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r134": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(11))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r135": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(13))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r136": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(15)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r137": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(15)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r138": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(15)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r139": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(16))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r140": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(17))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r141": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(23))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r142": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(13)(f))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1"
  },
  "r143": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(15))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1"
  },
  "r144": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(20))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1"
  },
  "r145": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(22))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1"
  },
  "r146": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(8))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1"
  },
  "r147": {
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32"
  },
  "r148": {
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32"
  },
  "r149": {
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32"
  },
  "r150": {
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32"
  },
  "r151": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "SubTopic": "20",
   "Topic": "740",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482659/740-20-45-2"
  },
  "r152": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "SubTopic": "10",
   "Topic": "275",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-1"
  },
  "r153": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "SubTopic": "360",
   "Topic": "958",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477798/958-360-50-1"
  },
  "r154": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "SubTopic": "360",
   "Topic": "958",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477798/958-360-50-6"
  },
  "r155": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "SubTopic": "360",
   "Topic": "958",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477798/958-360-50-7"
  },
  "r156": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Subparagraph": "(b)",
   "SubTopic": "10",
   "Topic": "740",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-9"
  },
  "r157": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(h))",
   "SubTopic": "10",
   "Topic": "235",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r158": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Topic": "250",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/250/tableOfContent"
  },
  "r159": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Topic": "323",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/323/tableOfContent"
  },
  "r160": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "a",
   "Publisher": "SEC"
  },
  "r161": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "b",
   "Subparagraph": "(1)",
   "Publisher": "SEC"
  },
  "r162": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "04",
   "Paragraph": "a",
   "Publisher": "SEC"
  },
  "r163": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "12",
   "Paragraph": "Column C",
   "Footnote": "5",
   "Publisher": "SEC"
  },
  "r164": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "12A",
   "Paragraph": "Column C",
   "Footnote": "4",
   "Publisher": "SEC"
  },
  "r165": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "12B",
   "Paragraph": "Column C",
   "Footnote": "2",
   "Publisher": "SEC"
  },
  "r166": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "14",
   "Paragraph": "Column F",
   "Footnote": "7",
   "Publisher": "SEC"
  },
  "r167": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "28",
   "Paragraph": "Column A",
   "Footnote": "2",
   "Publisher": "SEC"
  },
  "r168": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "28",
   "Paragraph": "Column B",
   "Publisher": "SEC"
  },
  "r169": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "28",
   "Paragraph": "Column C",
   "Publisher": "SEC"
  },
  "r170": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "28",
   "Paragraph": "Column D",
   "Publisher": "SEC"
  },
  "r171": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "28",
   "Paragraph": "Column E",
   "Publisher": "SEC"
  },
  "r172": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "28",
   "Paragraph": "Column F",
   "Publisher": "SEC"
  },
  "r173": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "28",
   "Paragraph": "Column G",
   "Publisher": "SEC"
  },
  "r174": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "28",
   "Paragraph": "Column H",
   "Publisher": "SEC"
  },
  "r175": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "28",
   "Paragraph": "Column I",
   "Publisher": "SEC"
  },
  "r176": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "29",
   "Paragraph": "Column A",
   "Footnote": "4",
   "Publisher": "SEC"
  },
  "r177": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "29",
   "Paragraph": "Column B",
   "Publisher": "SEC"
  },
  "r178": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "29",
   "Paragraph": "Column C",
   "Publisher": "SEC"
  },
  "r179": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "13",
   "Subsection": "01",
   "Paragraph": "a",
   "Subparagraph": "(4)(i)",
   "Publisher": "SEC"
  },
  "r180": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "13",
   "Subsection": "01",
   "Paragraph": "a",
   "Subparagraph": "(4)(iii)(A)",
   "Publisher": "SEC"
  },
  "r181": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "13",
   "Subsection": "01",
   "Paragraph": "a",
   "Subparagraph": "(4)(iii)(B)",
   "Publisher": "SEC"
  },
  "r182": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "13",
   "Subsection": "01",
   "Paragraph": "a",
   "Subparagraph": "(4)(iv)",
   "Publisher": "SEC"
  },
  "r183": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "13",
   "Subsection": "02",
   "Paragraph": "a",
   "Subparagraph": "(4)(i)",
   "Publisher": "SEC"
  },
  "r184": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "13",
   "Subsection": "02",
   "Paragraph": "a",
   "Subparagraph": "(4)(iii)(A)",
   "Publisher": "SEC"
  },
  "r185": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "13",
   "Subsection": "02",
   "Paragraph": "a",
   "Subparagraph": "(4)(iii)(B)",
   "Publisher": "SEC"
  },
  "r186": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "13",
   "Subsection": "02",
   "Paragraph": "a",
   "Subparagraph": "(4)(iii)(C)",
   "Publisher": "SEC"
  },
  "r187": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "13",
   "Subsection": "02",
   "Paragraph": "a",
   "Subparagraph": "(4)(iv)",
   "Publisher": "SEC"
  },
  "r188": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Staff Accounting Bulletin (SAB)",
   "Number": "Topic 11",
   "Section": "M",
   "Paragraph": "Question 2",
   "Publisher": "SEC"
  },
  "r189": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "105",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479343/105-10-65-6"
  },
  "r190": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "105",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "7",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479343/105-10-65-7"
  },
  "r191": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "105",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "9",
   "Subparagraph": "(d)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479343/105-10-65-9"
  },
  "r192": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "105",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "9",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479343/105-10-65-9"
  },
  "r193": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "205",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481003/205-10-S50-2"
  },
  "r194": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "205",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "7",
   "Subparagraph": "(SAB Topic 1.B.2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480922/205-10-S99-7"
  },
  "r195": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483499/205-20-50-1"
  },
  "r196": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5C",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483499/205-20-50-5C"
  },
  "r197": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483499/205-20-50-7"
  },
  "r198": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-1"
  },
  "r199": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-5"
  },
  "r200": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r201": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(12))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r202": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(13))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r203": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(14))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r204": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(15))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r205": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(17))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r206": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(18))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r207": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(3)(a)(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r208": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(30)(a)(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r209": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r210": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r211": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r212": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(9))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r213": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-1A"
  },
  "r214": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1A",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-1A"
  },
  "r215": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1A",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-1A"
  },
  "r216": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-1B"
  },
  "r217": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1B",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-1B"
  },
  "r218": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-4"
  },
  "r219": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-5"
  },
  "r220": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-6"
  },
  "r221": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(24))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r222": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(25))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r223": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-21"
  },
  "r224": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(o)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-22"
  },
  "r225": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-6"
  },
  "r226": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "17",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-17"
  },
  "r227": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "25",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-25"
  },
  "r228": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-2"
  },
  "r229": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-2A"
  },
  "r230": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-8"
  },
  "r231": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480738/235-10-S50-1"
  },
  "r232": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480738/235-10-S50-4"
  },
  "r233": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(g)(1)(i))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r234": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(g)(1)(ii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r235": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(k)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r236": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(k)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r237": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-04(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-3"
  },
  "r238": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "23",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-23"
  },
  "r239": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "24",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-24"
  },
  "r240": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-5"
  },
  "r241": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-1"
  },
  "r242": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-1"
  },
  "r243": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-1"
  },
  "r244": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-1"
  },
  "r245": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-1"
  },
  "r246": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-1"
  },
  "r247": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-1"
  },
  "r248": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-11"
  },
  "r249": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-11"
  },
  "r250": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-3"
  },
  "r251": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-4"
  },
  "r252": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-6"
  },
  "r253": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-7"
  },
  "r254": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-7"
  },
  "r255": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-8"
  },
  "r256": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-9"
  },
  "r257": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "5",
   "Subparagraph": "(SAB Topic 11.M.Q2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480530/250-10-S99-5"
  },
  "r258": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480530/250-10-S99-6"
  },
  "r259": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-10"
  },
  "r260": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "16",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-16"
  },
  "r261": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-2"
  },
  "r262": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-3"
  },
  "r263": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "60B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-60B"
  },
  "r264": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "60B",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-60B"
  },
  "r265": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-7"
  },
  "r266": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-1"
  },
  "r267": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "15",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482635/260-10-55-15"
  },
  "r268": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "270",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482964/270-10-50-1"
  },
  "r269": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "272",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483014/272-10-45-1"
  },
  "r270": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "275",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-2"
  },
  "r271": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "275",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "20",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-20"
  },
  "r272": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "275",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "20",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-20"
  },
  "r273": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/280/tableOfContent"
  },
  "r274": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "15",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-15"
  },
  "r275": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-21"
  },
  "r276": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-21"
  },
  "r277": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22"
  },
  "r278": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22"
  },
  "r279": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22"
  },
  "r280": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22"
  },
  "r281": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22"
  },
  "r282": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22"
  },
  "r283": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22"
  },
  "r284": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22"
  },
  "r285": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22"
  },
  "r286": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(j)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22"
  },
  "r287": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "25",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-25"
  },
  "r288": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "25",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-25"
  },
  "r289": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "26",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-26"
  },
  "r290": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "26A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-26A"
  },
  "r291": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "26B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-26B"
  },
  "r292": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "26C",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-26C"
  },
  "r293": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30"
  },
  "r294": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30"
  },
  "r295": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30"
  },
  "r296": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30"
  },
  "r297": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "31",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-31"
  },
  "r298": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32"
  },
  "r299": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(ee)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32"
  },
  "r300": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32"
  },
  "r301": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "34",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-34"
  },
  "r302": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "40",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-40"
  },
  "r303": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "41",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-41"
  },
  "r304": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "41",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-41"
  },
  "r305": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "41",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-41"
  },
  "r306": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "42",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-42"
  },
  "r307": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476173/280-10-65-1"
  },
  "r308": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "13",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481990/310-10-45-13"
  },
  "r309": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481990/310-10-45-2"
  },
  "r310": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481962/310-10-50-4"
  },
  "r311": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "323",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "35",
   "Paragraph": "18",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481725/323-10-35-18"
  },
  "r312": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "323",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481664/323-10-45-1"
  },
  "r313": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "323",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481687/323-10-50-3"
  },
  "r314": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "323",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481687/323-10-50-3"
  },
  "r315": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "323",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481687/323-10-50-3"
  },
  "r316": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "323",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481687/323-10-50-3"
  },
  "r317": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "323",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481687/323-10-50-3"
  },
  "r318": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "323",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481687/323-10-50-3"
  },
  "r319": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "323",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481687/323-10-50-3"
  },
  "r320": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-4"
  },
  "r321": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(e)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-4"
  },
  "r322": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(e)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-4"
  },
  "r323": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "5",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-5"
  },
  "r324": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479344/326-20-45-1"
  },
  "r325": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "330",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/330/tableOfContent"
  },
  "r326": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "330",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483080/330-10-50-2"
  },
  "r327": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "340",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "05",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482955/340-10-05-5"
  },
  "r328": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "340",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483032/340-10-45-1"
  },
  "r329": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482598/350-20-45-1"
  },
  "r330": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1"
  },
  "r331": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1"
  },
  "r332": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1"
  },
  "r333": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1"
  },
  "r334": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1"
  },
  "r335": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1"
  },
  "r336": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1"
  },
  "r337": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1"
  },
  "r338": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1"
  },
  "r339": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482686/350-30-45-1"
  },
  "r340": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-3"
  },
  "r341": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "60",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476166/350-60-65-1"
  },
  "r342": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-3"
  },
  "r343": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-3"
  },
  "r344": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3A",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-3A"
  },
  "r345": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3A",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-3A"
  },
  "r346": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "405",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(e)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1"
  },
  "r347": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "420",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482017/420-10-50-1"
  },
  "r348": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "420",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482017/420-10-50-1"
  },
  "r349": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "420",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SAB Topic 5.P.4.d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479823/420-10-S99-2"
  },
  "r350": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "440",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482648/440-10-50-4"
  },
  "r351": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "440",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482648/440-10-50-4"
  },
  "r352": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-6"
  },
  "r353": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(4)(i))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A"
  },
  "r354": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii)(A))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A"
  },
  "r355": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii)(B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A"
  },
  "r356": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(4)(iv))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A"
  },
  "r357": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A"
  },
  "r358": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1B",
   "Subparagraph": "(SX 210.13-02(a)(4)(i))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B"
  },
  "r359": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1B",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B"
  },
  "r360": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1B",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B"
  },
  "r361": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1B",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(C))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B"
  },
  "r362": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1B",
   "Subparagraph": "(SX 210.13-02(a)(4)(iv))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B"
  },
  "r363": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1B",
   "Subparagraph": "(SX 210.13-02(a)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B"
  },
  "r364": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r365": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r366": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r367": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r368": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r369": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r370": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1D",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1D"
  },
  "r371": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1D",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1D"
  },
  "r372": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1D",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1D"
  },
  "r373": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1E",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1E"
  },
  "r374": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1E",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1E"
  },
  "r375": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1E",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1E"
  },
  "r376": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1F",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1F"
  },
  "r377": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1F",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1F"
  },
  "r378": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1F",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1F"
  },
  "r379": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1F",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1F"
  },
  "r380": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1I",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1I"
  },
  "r381": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-4"
  },
  "r382": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-6"
  },
  "r383": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-6"
  },
  "r384": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481538/470-20-65-4"
  },
  "r385": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(f)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481538/470-20-65-4"
  },
  "r386": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(f)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481538/470-20-65-4"
  },
  "r387": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(f)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481538/470-20-65-4"
  },
  "r388": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "480",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479887/480-10-S45-1"
  },
  "r389": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "480",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479887/480-10-S45-2"
  },
  "r390": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "480",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S45",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479887/480-10-S45-3"
  },
  "r391": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "480",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479857/480-10-S50-1"
  },
  "r392": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "480",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479857/480-10-S50-3"
  },
  "r393": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "480",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(01)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480244/480-10-S99-1"
  },
  "r394": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "480",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(01)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480244/480-10-S99-1"
  },
  "r395": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "480",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3A",
   "Subparagraph": "(24)(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480244/480-10-S99-3A"
  },
  "r396": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.3-04)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480008/505-10-S99-1"
  },
  "r397": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479837/606-10-45-1"
  },
  "r398": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479837/606-10-45-2"
  },
  "r399": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-11"
  },
  "r400": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-4"
  },
  "r401": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-5"
  },
  "r402": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-7"
  },
  "r403": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-8"
  },
  "r404": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(n)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r405": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(l)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-5"
  },
  "r406": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(f)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480576/715-80-50-5"
  },
  "r407": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/718/tableOfContent"
  },
  "r408": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "35",
   "Paragraph": "1D",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480483/718-10-35-1D"
  },
  "r409": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "35",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480483/718-10-35-2"
  },
  "r410": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "35",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480483/718-10-35-3"
  },
  "r411": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r412": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r413": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r414": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r415": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r416": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r417": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r418": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r419": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(01)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r420": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(02)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r421": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(03)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r422": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(04)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r423": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r424": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r425": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r426": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(iii)(01)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r427": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(iii)(02)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r428": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(iii)(03)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r429": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r430": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r431": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(e)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r432": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(e)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r433": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r434": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r435": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r436": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r437": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(iv)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r438": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(v)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r439": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(h)(1)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r440": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(h)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r441": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(h)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r442": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r443": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(l)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r444": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "17",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480336/718-10-65-17"
  },
  "r445": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "17",
   "Subparagraph": "(d)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480336/718-10-65-17"
  },
  "r446": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479983/718-10-S45-1"
  },
  "r447": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 14.F)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479830/718-10-S99-1"
  },
  "r448": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "730",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482916/730-10-50-1"
  },
  "r449": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-10"
  },
  "r450": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12"
  },
  "r451": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-2"
  },
  "r452": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-2"
  },
  "r453": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-22"
  },
  "r454": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "23",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-23"
  },
  "r455": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "8",
   "Subparagraph": "(d)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482615/740-10-65-8"
  },
  "r456": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "8",
   "Subparagraph": "(d)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482615/740-10-65-8"
  },
  "r457": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 6.I.7)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479360/740-10-S99-1"
  },
  "r458": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482659/740-20-45-2"
  },
  "r459": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "25",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478758/740-323-25-1"
  },
  "r460": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2"
  },
  "r461": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(d)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2"
  },
  "r462": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2"
  },
  "r463": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2"
  },
  "r464": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2"
  },
  "r465": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2"
  },
  "r466": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2"
  },
  "r467": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479581/805-30-50-1"
  },
  "r468": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479581/805-30-50-2"
  },
  "r469": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "60",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476176/805-60-65-1"
  },
  "r470": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "60",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476176/805-60-65-1"
  },
  "r471": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "25",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481231/810-10-45-25"
  },
  "r472": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "25",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481231/810-10-45-25"
  },
  "r473": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(bb)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-3"
  },
  "r474": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-3"
  },
  "r475": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4A",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4A"
  },
  "r476": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4C",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4C"
  },
  "r477": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4D",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4D"
  },
  "r478": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4F",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4F"
  },
  "r479": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-8A"
  },
  "r480": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6"
  },
  "r481": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(h)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6"
  },
  "r482": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(h)(1)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6"
  },
  "r483": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(h)(1)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6"
  },
  "r484": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(h)(1)(iv)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6"
  },
  "r485": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(i)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6"
  },
  "r486": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(i)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6"
  },
  "r487": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480870/815-30-50-2"
  },
  "r488": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480870/815-30-50-2"
  },
  "r489": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480870/815-30-50-2"
  },
  "r490": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480870/815-30-50-2"
  },
  "r491": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(e)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1"
  },
  "r492": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(e)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1"
  },
  "r493": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(e)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1"
  },
  "r494": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1"
  },
  "r495": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r496": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r497": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-3"
  },
  "r498": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "825",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/825/tableOfContent"
  },
  "r499": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "28",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-28"
  },
  "r500": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-30"
  },
  "r501": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-32"
  },
  "r502": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "825",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482804/825-20-50-1"
  },
  "r503": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/830/tableOfContent"
  },
  "r504": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "17",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481839/830-10-45-17"
  },
  "r505": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "35",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482014/830-20-35-1"
  },
  "r506": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481956/830-20-45-1"
  },
  "r507": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481926/830-20-50-1"
  },
  "r508": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "230",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477401/830-230-45-1"
  },
  "r509": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "17",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-17"
  },
  "r510": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "20",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-20"
  },
  "r511": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "20",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-20"
  },
  "r512": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "20",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-20"
  },
  "r513": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "20",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-20"
  },
  "r514": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481674/830-30-50-1"
  },
  "r515": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481674/830-30-50-2"
  },
  "r516": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479424/830-30-S99-1"
  },
  "r517": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "835",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482925/835-30-45-2"
  },
  "r518": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "835",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482900/835-30-50-1"
  },
  "r519": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "8",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479832/842-10-65-8"
  },
  "r520": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/842-20/tableOfContent"
  },
  "r521": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "35",
   "Paragraph": "12A",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479165/842-20-35-12A"
  },
  "r522": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479041/842-20-45-1"
  },
  "r523": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479041/842-20-45-1"
  },
  "r524": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479041/842-20-45-4"
  },
  "r525": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4"
  },
  "r526": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4"
  },
  "r527": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(g)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4"
  },
  "r528": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(g)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4"
  },
  "r529": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-6"
  },
  "r530": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-7A"
  },
  "r531": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "848",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(e)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483550/848-10-65-1"
  },
  "r532": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "848",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(a)(3)(iii)(03)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483550/848-10-65-2"
  },
  "r533": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "848",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483550/848-10-65-2"
  },
  "r534": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "848",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483550/848-10-65-2"
  },
  "r535": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "850",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/850/tableOfContent"
  },
  "r536": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "850",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483326/850-10-50-1"
  },
  "r537": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "850",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483326/850-10-50-1"
  },
  "r538": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "850",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483326/850-10-50-1"
  },
  "r539": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "850",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483326/850-10-50-1"
  },
  "r540": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "850",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483326/850-10-50-2"
  },
  "r541": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "850",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483326/850-10-50-3"
  },
  "r542": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "850",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483326/850-10-50-6"
  },
  "r543": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "855",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483399/855-10-50-2"
  },
  "r544": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "924",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 11.L)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479941/924-10-S99-1"
  },
  "r545": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478934/932-220-50-1"
  },
  "r546": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "15",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-15"
  },
  "r547": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-18"
  },
  "r548": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-18"
  },
  "r549": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-18"
  },
  "r550": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "19",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-19"
  },
  "r551": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "20",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-20"
  },
  "r552": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "20",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-20"
  },
  "r553": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "23",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23"
  },
  "r554": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "23",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23"
  },
  "r555": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "23",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23"
  },
  "r556": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "23",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23"
  },
  "r557": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "23",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23"
  },
  "r558": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "23",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23"
  },
  "r559": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "28",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-28"
  },
  "r560": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "28",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-28"
  },
  "r561": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "31",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31"
  },
  "r562": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "31",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31"
  },
  "r563": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "31",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31"
  },
  "r564": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "31",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31"
  },
  "r565": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "31",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31"
  },
  "r566": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "31",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31"
  },
  "r567": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "33",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-33"
  },
  "r568": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "35A",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-35A"
  },
  "r569": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5"
  },
  "r570": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5"
  },
  "r571": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5"
  },
  "r572": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5"
  },
  "r573": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5"
  },
  "r574": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5"
  },
  "r575": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-6"
  },
  "r576": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-7"
  },
  "r577": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-8"
  },
  "r578": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-8"
  },
  "r579": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-8"
  },
  "r580": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "280",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478657/932-280-50-1"
  },
  "r581": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478988/932-323-50-1"
  },
  "r582": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(10)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r583": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(26))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1"
  },
  "r584": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(27))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1"
  },
  "r585": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478671/942-235-S50-1"
  },
  "r586": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-05(b)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477314/942-235-S99-1"
  },
  "r587": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-05(b)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477314/942-235-S99-1"
  },
  "r588": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-05(b)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477314/942-235-S99-1"
  },
  "r589": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477314/942-235-S99-2"
  },
  "r590": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478451/942-360-50-1"
  },
  "r591": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(12))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r592": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(16)(a)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r593": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(17))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r594": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(19))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r595": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r596": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(22))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r597": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(23)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r598": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r599": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(25))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r600": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r601": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(8)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r602": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(8))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r603": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(10))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r604": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(11))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r605": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(18))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r606": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(19))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r607": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(20))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r608": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(22))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r609": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(23))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r610": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(9))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r611": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column A))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1"
  },
  "r612": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1"
  },
  "r613": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column C))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1"
  },
  "r614": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column D))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1"
  },
  "r615": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column E))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1"
  },
  "r616": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column F))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1"
  },
  "r617": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column G))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1"
  },
  "r618": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column H))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1"
  },
  "r619": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column I))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1"
  },
  "r620": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column J))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1"
  },
  "r621": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column K))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1"
  },
  "r622": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5"
  },
  "r623": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Subparagraph": "(a)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-9"
  },
  "r624": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2"
  },
  "r625": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(f)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2"
  },
  "r626": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2"
  },
  "r627": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2"
  },
  "r628": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(2)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2"
  },
  "r629": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(2)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2"
  },
  "r630": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(2)(iv)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2"
  },
  "r631": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(h)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2"
  },
  "r632": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "825",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477351/944-825-50-1B"
  },
  "r633": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "825",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477351/944-825-50-1B"
  },
  "r634": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-03(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479886/946-10-S99-3"
  },
  "r635": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480990/946-20-50-11"
  },
  "r636": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480990/946-20-50-2"
  },
  "r637": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480990/946-20-50-5"
  },
  "r638": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480990/946-20-50-6"
  },
  "r639": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478009/946-205-45-4"
  },
  "r640": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478009/946-205-45-6"
  },
  "r641": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477796/946-210-45-4"
  },
  "r642": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-1"
  },
  "r643": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-2"
  },
  "r644": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6"
  },
  "r645": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r646": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(12)(b)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r647": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(12)(b)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r648": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(12)(b)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r649": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(13)(a)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r650": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(13)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r651": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(14))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r652": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(15))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r653": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(16)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r654": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(17))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r655": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(19))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r656": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(2)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r657": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(2)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r658": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(3)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r659": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(3)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r660": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(3)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r661": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(5)(a)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r662": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(6)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r663": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(6)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r664": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(6)(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r665": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(6)(e))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r666": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(7)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r667": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(8))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r668": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(9)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r669": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(9)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r670": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(9)(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r671": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(9)(e))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r672": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.6-05(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-2"
  },
  "r673": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.6-05(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-2"
  },
  "r674": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479105/946-220-45-7"
  },
  "r675": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r676": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(2)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r677": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(2)(c)(2)(i))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r678": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(2)(c)(2)(ii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r679": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(2)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r680": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(2)(e))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r681": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(2)(g)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r682": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r683": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r684": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r685": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r686": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r687": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r688": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r689": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r690": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r691": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r692": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r693": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r694": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r695": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(9))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r696": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(1)(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3"
  },
  "r697": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(4)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3"
  },
  "r698": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3"
  },
  "r699": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3"
  },
  "r700": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477968/946-235-50-2"
  },
  "r701": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477968/946-235-50-2"
  },
  "r702": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477802/946-310-45-1"
  },
  "r703": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column A)(Footnote 1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r704": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(i))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r705": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(ii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r706": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r707": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column A)(Footnote 4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r708": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column A))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r709": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column B)(Footnote 7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r710": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r711": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column C)(Footnote 10))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r712": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column C)(Footnote 5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r713": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column C)(Footnote 6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r714": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column C)(Footnote 8)(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r715": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column C)(Footnote 8)(a)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r716": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column C)(Footnote 8)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r717": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column C)(Footnote 8)(b)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r718": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column C)(Footnote 8)(b)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r719": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column C)(Footnote 8)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r720": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column C)(Footnote 8))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r721": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column C)(Footnote 9))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r722": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column C))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r723": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "19",
   "Subparagraph": "(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-19"
  },
  "r724": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "19",
   "Subparagraph": "(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-19"
  },
  "r725": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-12A(Column C)(Footnote 4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-2"
  },
  "r726": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r727": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r728": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r729": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r730": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r731": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r732": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r733": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r734": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column A))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r735": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column B)(Footnote 10))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r736": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r737": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 11)(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r738": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 11)(a)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r739": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 11)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r740": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 11)(b)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r741": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 11)(b)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r742": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 11)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r743": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 11))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r744": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 12))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r745": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 13))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r746": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r747": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 9))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r748": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column C))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r749": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column D))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r750": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 1)(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r751": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 1)(a)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r752": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 1)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r753": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 1)(b)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r754": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 1)(b)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r755": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 1)(b)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r756": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 1)(b)(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r757": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 1)(b)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r758": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 1)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r759": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r760": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r761": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column A))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r762": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r763": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column F)(Footnote 4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r764": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column F)(Footnote 5)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r765": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column F)(Footnote 7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r766": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column F)(Footnote 8))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r767": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column F)(Footnote 9))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r768": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column F))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r769": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "948",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "S50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478322/948-310-S50-2"
  },
  "r770": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "948",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-29(Column A)(Footnote 4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479628/948-310-S99-1"
  },
  "r771": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "948",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-29(Column B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479628/948-310-S99-1"
  },
  "r772": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "948",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-29(Column C))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479628/948-310-S99-1"
  },
  "r773": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "954",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478785/954-310-50-2"
  },
  "r774": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "954",
   "SubTopic": "440",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478522/954-440-50-1"
  },
  "r775": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1"
  },
  "r776": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1"
  },
  "r777": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column C))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1"
  },
  "r778": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column D))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1"
  },
  "r779": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column E))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1"
  },
  "r780": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column F))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1"
  },
  "r781": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column G))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1"
  },
  "r782": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column H))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1"
  },
  "r783": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column I))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1"
  },
  "r784": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "985",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481283/985-20-50-2"
  },
  "r785": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "10",
   "SubTopic": "10",
   "Topic": "825",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482881/825-10-55-10"
  },
  "r786": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "13H",
   "Subparagraph": "(b)",
   "SubTopic": "40",
   "Topic": "944",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-13H"
  },
  "r787": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-1"
  },
  "r788": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-1"
  },
  "r789": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-12"
  },
  "r790": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476153/220-40-55-11"
  },
  "r791": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "14",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476153/220-40-55-14"
  },
  "r792": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "18",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476153/220-40-55-18"
  },
  "r793": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "21",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476153/220-40-55-21"
  },
  "r794": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476153/220-40-55-4"
  },
  "r795": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "52",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482635/260-10-55-52"
  },
  "r796": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "275",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "18",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482836/275-10-55-18"
  },
  "r797": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "275",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482836/275-10-55-2"
  },
  "r798": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "275",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482836/275-10-55-4"
  },
  "r799": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30"
  },
  "r800": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "31",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-31"
  },
  "r801": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "47",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-47"
  },
  "r802": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "47",
   "Subparagraph": "(bb)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-47"
  },
  "r803": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "47",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-47"
  },
  "r804": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "47",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-47"
  },
  "r805": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "48",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-48"
  },
  "r806": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "49",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-49"
  },
  "r807": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "54",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-54"
  },
  "r808": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "54",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-54"
  },
  "r809": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "54",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-54"
  },
  "r810": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "24",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482548/350-20-55-24"
  },
  "r811": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r812": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "69B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481568/470-20-55-69B"
  },
  "r813": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "69C",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481568/470-20-55-69C"
  },
  "r814": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "69E",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481568/470-20-55-69E"
  },
  "r815": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "69F",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481568/470-20-55-69F"
  },
  "r816": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "480",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "64",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481620/480-10-55-64"
  },
  "r817": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-5"
  },
  "r818": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "91",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91"
  },
  "r819": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "715",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480576/715-80-50-11"
  },
  "r820": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "715",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480576/715-80-50-6"
  },
  "r821": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r822": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "231",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482663/740-10-55-231"
  },
  "r823": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-8"
  },
  "r824": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "39",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479303/805-10-55-39"
  },
  "r825": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "41",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479303/805-10-55-41"
  },
  "r826": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "805",
   "SubTopic": "740",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "13",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478064/805-740-55-13"
  },
  "r827": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4A",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4A"
  },
  "r828": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "182",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480401/815-10-55-182"
  },
  "r829": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "184",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480401/815-10-55-184"
  },
  "r830": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "100",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-100"
  },
  "r831": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "102",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-102"
  },
  "r832": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482881/825-10-55-12"
  },
  "r833": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "835",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482949/835-30-55-8"
  },
  "r834": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "53",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479589/842-20-55-53"
  },
  "r835": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "852",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481372/852-10-55-10"
  },
  "r836": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-12"
  },
  "r837": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "17",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-17"
  },
  "r838": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-21"
  },
  "r839": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "29",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-29"
  },
  "r840": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-3"
  },
  "r841": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "34",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-34"
  },
  "r842": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477916/932-235-55-2"
  },
  "r843": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477916/932-235-55-3"
  },
  "r844": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477916/932-235-55-4"
  },
  "r845": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477916/932-235-55-5"
  },
  "r846": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477916/932-235-55-6"
  },
  "r847": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477916/932-235-55-7"
  },
  "r848": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "9C",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-9C"
  },
  "r849": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "9C",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-9C"
  },
  "r850": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "605",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477548/944-605-55-11"
  },
  "r851": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "605",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "14",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477548/944-605-55-14"
  },
  "r852": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-1"
  },
  "r853": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6"
  },
  "r854": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477439/946-210-55-1"
  },
  "r855": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477802/946-310-45-1"
  },
  "r856": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(i))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r857": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-2"
  },
  "r858": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r859": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r860": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "830",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479168/946-830-55-10"
  },
  "r861": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "830",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479168/946-830-55-12"
  },
  "r862": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b-2"
  },
  "r863": {
   "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483076/450-20-50-10"
  },
  "r864": {
   "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478156/740-323-50-2"
  },
  "r865": {
   "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478156/740-323-50-2"
  },
  "r866": {
   "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478156/740-323-50-2"
  },
  "r867": {
   "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef",
   "Topic": "855",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483399/855-10-50-3"
  },
  "r868": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "11",
   "Subsection": "03",
   "Publisher": "SEC"
  },
  "r869": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "04",
   "Subparagraph": "(a)",
   "Publisher": "SEC"
  },
  "r870": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "12",
   "Paragraph": "Column A",
   "Subparagraph": "(ii)",
   "Footnote": "2",
   "Publisher": "SEC"
  },
  "r871": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "12A",
   "Paragraph": "Column A",
   "Footnote": "2",
   "Publisher": "SEC"
  },
  "r872": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "12B",
   "Paragraph": "Column A",
   "Subparagraph": "(b)",
   "Footnote": "1",
   "Publisher": "SEC"
  },
  "r873": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "14",
   "Paragraph": "Column A",
   "Footnote": "2",
   "Publisher": "SEC"
  },
  "r874": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "13",
   "Subsection": "01",
   "Paragraph": "a",
   "Subparagraph": "(4)(ii)",
   "Publisher": "SEC"
  },
  "r875": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "13",
   "Subsection": "01",
   "Paragraph": "a",
   "Subparagraph": "(4)(iii)",
   "Publisher": "SEC"
  },
  "r876": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6)(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r877": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r878": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(9))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r879": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-4"
  },
  "r880": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-5"
  },
  "r881": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-6"
  },
  "r882": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(7)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r883": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(9)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r884": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r885": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476148/220-40-50-6"
  },
  "r886": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "24",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-24"
  },
  "r887": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-28"
  },
  "r888": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483426/235-10-50-4"
  },
  "r889": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480738/235-10-S50-1"
  },
  "r890": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480738/235-10-S50-4"
  },
  "r891": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(f))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r892": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(g)(1)(i))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r893": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(g)(1)(ii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r894": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(h)(1)(Note 1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r895": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-04(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-3"
  },
  "r896": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "23",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-23"
  },
  "r897": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "24",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-24"
  },
  "r898": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-5"
  },
  "r899": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-6"
  },
  "r900": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "270",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482964/270-10-50-1"
  },
  "r901": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "275",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-18"
  },
  "r902": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "275",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-18"
  },
  "r903": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "275",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-18"
  },
  "r904": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "275",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-18"
  },
  "r905": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "275",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-18"
  },
  "r906": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-18"
  },
  "r907": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22"
  },
  "r908": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30"
  },
  "r909": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30"
  },
  "r910": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(ee)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32"
  },
  "r911": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32"
  },
  "r912": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/310-10/tableOfContent"
  },
  "r913": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481990/310-10-45-2"
  },
  "r914": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "310",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "40",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481628/310-20-40-7"
  },
  "r915": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "323",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481687/323-10-50-3"
  },
  "r916": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1"
  },
  "r917": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1"
  },
  "r918": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2"
  },
  "r919": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2"
  },
  "r920": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3A",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-3A"
  },
  "r921": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3A",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-3A"
  },
  "r922": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "405",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/405-30/tableOfContent"
  },
  "r923": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "405",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1"
  },
  "r924": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "405",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1"
  },
  "r925": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "405",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(e)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1"
  },
  "r926": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "450",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/450/tableOfContent"
  },
  "r927": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-8"
  },
  "r928": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(c)(5)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-8"
  },
  "r929": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-6"
  },
  "r930": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(4)(ii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A"
  },
  "r931": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A"
  },
  "r932": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r933": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r934": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r935": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r936": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r937": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r938": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r939": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(01)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r940": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(02)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r941": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(03)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r942": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(04)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r943": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r944": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r945": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r946": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(iii)(01)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r947": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(iii)(02)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r948": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(iii)(03)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r949": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r950": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r951": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(e)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r952": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(e)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r953": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r954": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r955": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r956": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(iv)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r957": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(v)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r958": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(h)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r959": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "720",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483384/720-30-45-1"
  },
  "r960": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478156/740-323-50-1A"
  },
  "r961": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1A",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478156/740-323-50-1A"
  },
  "r962": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1A",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478156/740-323-50-1A"
  },
  "r963": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1A",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478156/740-323-50-1A"
  },
  "r964": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(e)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-2"
  },
  "r965": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-3"
  },
  "r966": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "805",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479581/805-30-50-4"
  },
  "r967": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "815",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480870/815-30-50-2"
  },
  "r968": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(e)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1"
  },
  "r969": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "28",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-28"
  },
  "r970": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "20",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-20"
  },
  "r971": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479424/830-30-S99-1"
  },
  "r972": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "835",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482925/835-30-45-2"
  },
  "r973": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "835",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482900/835-30-50-1"
  },
  "r974": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4"
  },
  "r975": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-6"
  },
  "r976": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "850",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483326/850-10-50-1"
  },
  "r977": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "850",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483326/850-10-50-1"
  },
  "r978": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "850",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483326/850-10-50-3"
  },
  "r979": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "852",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481404/852-10-50-7"
  },
  "r980": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "852",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481404/852-10-50-7"
  },
  "r981": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "912",
   "SubTopic": "730",
   "Name": "Accounting Standards Codification",
   "Section": "25",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479532/912-730-25-1"
  },
  "r982": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(27))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1"
  },
  "r983": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "942",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477314/942-235-S99-2"
  },
  "r984": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(10))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r985": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(15)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r986": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(16)(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r987": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r988": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(12))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r989": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(23))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r990": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479432/944-30-50-2B"
  },
  "r991": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477363/944-310-50-3"
  },
  "r992": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4B"
  },
  "r993": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4B",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4B"
  },
  "r994": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4C",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4C"
  },
  "r995": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4D",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4D"
  },
  "r996": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4G",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4G"
  },
  "r997": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5"
  },
  "r998": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5"
  },
  "r999": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5"
  },
  "r1000": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5"
  },
  "r1001": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6"
  },
  "r1002": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6"
  },
  "r1003": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6"
  },
  "r1004": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6"
  },
  "r1005": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6"
  },
  "r1006": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)(5)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6"
  },
  "r1007": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)(6)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6"
  },
  "r1008": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6"
  },
  "r1009": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A"
  },
  "r1010": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A"
  },
  "r1011": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A"
  },
  "r1012": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(b)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A"
  },
  "r1013": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A"
  },
  "r1014": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A"
  },
  "r1015": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7B"
  },
  "r1016": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7B",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7B"
  },
  "r1017": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7B",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7B"
  },
  "r1018": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480109/944-80-50-2"
  },
  "r1019": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480109/944-80-50-2"
  },
  "r1020": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478009/946-205-45-4"
  },
  "r1021": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "3",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479105/946-220-45-3"
  },
  "r1022": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "3",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479105/946-220-45-3"
  },
  "r1023": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(4)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3"
  },
  "r1024": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3"
  },
  "r1025": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(ii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r1026": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-2"
  },
  "r1027": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r1028": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  }
 }
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>88
<FILENAME>0001370416-25-000032-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0001370416-25-000032-xbrl.zip
M4$L#!!0    ( "J*05N2TJ9RUQ ! *+\%  1    =W!R="TR,#(U,#8S,"YH
M=&WLO7MWHTJ2+_K_? JN>GIVU5I8Q5O@VEMGN5RNW9ZIAV_9>_KT_6<6AI1%
M;PDT@/SH3W\C$_1&%@@0"8XYIVM;$H_,B%]$1D1&1OSZ?YZG$^&1A)$7^+_]
M(O>E7P3B.X'K^0^__7)Q>WE]_<O_&?[;K__/V=G__?3SJ_ Y<.93XL?"94CL
MF+C"DQ>/A7A,A+\'X9_>HRW<3.QX%(33L[/DMLM@]A)Z#^-84"1%7URV^#4\
MMUW%&ABZ=392+.-,L^_OS^Y5QSS31HJBN/?JR)8<\>%<OW=531I(9Z.!I9UI
MDN*>V9IAGJD:T0W='DGPK^B>&Y(YNK=&(V-@FYJD*Y9"5,."&PW#=H@S8N\=
MQS!GF+<?G7M1H"GRX+?>.(YGYQ\^/#T]]9_OPTD_"!\^*)*D?DBOZ"4W;%SX
MI+++9,NR/CS3AZ87G3]'7M:%\#SYP__]]O76&9.I?>;Y46S[#EG>!>]U5S>N
M#\/XD/RXN/1I%L:;;R!1/ O"N.\$TP^4T)*A2HNKO><X>X*>/_%\0AG[(0YM
M/Z)\LV-  GV$="8I9[*R/CKO-3IMS<9[WG>QK*Z]>/EX^.+/_=2EORXNG4=G
M#[8]6UX\LJ-[=FGZ YO_XN*=QVZ.FOY\;T?+43OS, 3\OVQR(2)._R%X_+#X
M=>,-0-TSN&#C)8L;7B.PK)])@%]Y\1R7>-EOA1\V7ABM\7XY=_AR=='YQ ;Q
M[1'_[(_;WO#7,;'=X:]3$ML"O>V,_._<>_RM=QGX,8CRV=W+#.;O))]^Z\7D
M.?[ T/QA^&__]F^_QEX\(4.*N+,%L'[]D'SYZX?DT?>!^S+\U?4>A2A^F9#?
M>JX7S2;VR[D?^ 0&X#V?TPM)F/SIN2[QV9_P^W?0)Z'G).]_CG^2T6\]YPRH
MXMM3^B3BG5_Y\+J72QA=:$^N?9<\_Q=YZ0F>^UMO!%<.)9 K=2!ILO'KAXV'
M%GC'0K'=P(6!>^6[GT&]]82$8;_U@,GG+GQS-H5'C,]<^^7LA=CA8A!*;VA\
M4"7&@>/'< $#<.D@ODSLA\UWC[QGXI[%X9PL7JGVAO3C\6^[9&".OWB18T_^
M 9/),>G%R[7>4%8^J')Y>J]>_P6^B18OT'O#<K3<?'["U8TW&+WA_ZOL//_#
M)CY#,B)4XDF4(594=YQ'3)?#" 2FH\YC$*;?>I$WG4VH4F'?C4,ZP T)ZC]'
M+L@7>]_J)>D[HV >LD],YY[/?2]F@Y[#/8LOI\2.YB$9ILO3^1^WGW_]L/G3
MXC.]?^=9T=B&%^T\+OF4_%CH>3 V(/(MO7'Y4% (GDO6+V5TMN,@/'(:._?3
M+S\3/YAZ?M9C\TYGXQ$?-D?_VJS]^?2>A'NH.(,_"]&0S'<?M2#,U1\_"SV+
M+C< S9WG412>IS\6>J!C5\+@RXM6,3@B#U2+9),Q_3$/&5--E5"2KEGI]X0M
M;8M/,!SX//)(*#"]0C*-BLOK_]I<\[9O7HY@\^DSI@07G\!:"V.J[YFB/9-D
M^/^+^U:_+8?IKEUJG%$38/.7Q>?%2SYLS#N;# H'9$C,UCAC9HM?CIF9RM?,
M-+#CSU2YBIEI',QL&[K:Z:&K\T8&+3\9M.K(8'!(AKR*K$(R#.HF0SJ;9+U)
M/KKPLN?9Q'.\^!NA5HC@>O KB^/T4D_X_#:&*=%[KL#E Q<JF,[ (_/CZ.+9
M ^-O<1E\#R;^;1PX?R;/^O5#YBN6U%B.I*@>DM2*])#94I(SPR'YZ98X\]"+
M/1+]B,<D_.&3MA#?:BGQ%Y==N*Y'HS#@&-J>>^U?VC,OMB=M(;\LM9S^/TEL
M>SYQK^S0]_R'J#6$K]UPKQOXCC.?SB<T<L]T#KTN)&/ZM$=R[3O!M#4Z2.;,
M>ZAR:K6[#VVV)S@P>^7:O:!N6!\\L*IV3ZWU:R4/7*K=D>SBPLH#X]#US6T>
M5!5<E-'W;9+ZZ/PV2G\%G=^&"(_.+S^\X,_YK6QJZ/SFH[E:W::>@OYLD]1O
MNXO:A$51)?W;[GR>U**HDO!M=QZ;MBBJY$7M3F5S4VN[QW;2<'H#Z1-J6UVZ
MAL/I3;"J[4[@Z</I37"I=O>PBPLK#XQ#YS=WKFY5N^TJ.K]-4A^=WV;IC\YO
M0X1'YY<?7G#F_%8Y-71^\YI\S9PDT=#Y;0VKT/EM Y?0^6TIX]#YS6T>5+7;
MKJ'SVR3UT?EMEO[H_#9$>'1^^>%%6].)3Y_"75T5A;9ZY4VF<%=&?;VM+G>S
M*=S5T1_]Z(8(CZXQ/[Q ;[= .**!ZE0ZNL:M857;_>C3!V:;X%+;O6TN K--
M,(X[;ST"#4>K:+OS"?DQ2KCVC<3C (SA1Q+%*UZN?TO(=WM*UI3D)8EF7FC_
M9^#Y\7_#+?.P-5Z[SJW7_MF+9D%D3WX/@_GL<F)'$3S0856O-\4)+J1S\OPY
MR-.,EOV$2Z*_D8D["D)X0'MXP:TW?QD2\!2_V(XW@6%MDI_9!L3]3.[CMA#:
MJ-UQ+ZJ0M3/).I/5/ IYZ])291>Y=:!+"G]R.WPS^O1R>U@#Y!Y6LC@OE_E/
M]H2V*K@=$Q)?^.XJG$)'-0EH%=_HT\O&7")XQ&1.VV)DCWQM5?E*NUU\GM.U
MIYK1W\[O(_*_<[JF/<(_M%[_EBAO7E"W. _.%*L2<>8N'$'MBLNTR4-"XD7+
MAU7A:JX5)'=!A48H6F&8QN N"G ZBG*0$V)PY]DW1/Z&ZCMSY[(WA_X&'&^#
M2\>[&?0W<!K+X,['?H7\RP8A7-LGW'G*C5"T0OMDP-U>]NDHRH%],N#.$V^(
M_,W8)X,V>9 UH[\!^V30)G>S9O0WT7:D5;[I]W_P;Y\,6N5NUD;1*NV35GF0
MU5*4!_ND51YDC>1OR#YIDP=9,_J;L$_:Y&[6C/X&[!.S3;[IS=?O_-LG9IO<
MS?HH6J%]8K;)@ZR8HAS8)V:;/,@ZR=^,?6*VR8.L&?T-V"=FF]S-FM'?A'W2
M)M_T]NJ_6F"?M,G=K(^B5=HG;?(@*Z8H#_9)FSS(.LG?C'UBM<F#K!G]#=@G
M5IO<S9K1WX!]8K7)-[W^WH+\$ZM-[F9]%*W0/K':Y$%63%$.[!.K31YDG>1O
MR#YIDP=9,_J;L$_:Y&[6C/XF[),V^:87/V];8)^TR=VLCZ(5VB>RU"87LF*2
M<F"@R%*;?,@ZZ=]0@W:I34YDS?AOP$21I3:YG#7COP$;19:X<U!/7B@C]XBX
M/";?UG6/.\\<<7=JW#6RWG 7DD#<G11W3=F9W,5B$'>GQETC]AUW0:AE59YQ
M$,9W))S2$EN[17N^!K8?W=@O]GUUP.*O4I"L51/%X2XPAA6O.EWQ:MN46Z]Y
M=<"46[^TE&J3N0M=(NAK #TK9KH8\ZU#?!LPDKPHJ7.:?/,E"(EC1X>PWF(9
ML_*[2U95YH/,77@:S=:ZS=9Z]NYDF;M(.T+IA%"J<M-2YF[38%6IGM4_OP'M
M_'(7@@=C.XS<GU[6?]FN;K_ZI3W2S.V^ =<LJ%0*N NA5U5W?CZ= F7^#K_-
M@C &35:S<:7DC\THFPPL9UQQ%XMN$0/KZ0<OR]S%::MMYG!I^[9K?[UIST+#
M70"SA0RI=-GA+M98+4-NGPB,Y>)3:R1$X2X.UD*&5"DA"G=!DXH8PMHZ)===
M.$XPAUF[7X)P<75K^BO+"G>QB"YPJ%(9XM;%S^;-]\"'&43!Q'.I)[D@>#>Z
M:<D*M]Y^6[A1J6QPY_BW@AL\I#TJW+G\[6-=0QE<"G>1@?:QKJ&D3X6[&$+[
M6-=0_IK"7;1AP;J;,("9Q"\W$UC(+WR7LG+&=NM>5LD"";."Z6P>)W8YNP*N
MO@U&\9/=(A-0Y2[*4(@1BXN_S$/?H^("%W[QGNE?[7%;5>X""T?QX)OMC#V?
MA"_K%[:'"=S%#HYBPE=B1V0<3-SKZ2P,'EF>08LD@=OP0 N6A2I]497;R #?
MRT*E/. V'L#YLE I$[CU[#E?%BIE K<^>C6MYG._CC[K&B@9SMG"LEITKCY?
MTI,U[5GHN77=WQ)'*Y51;CWZ:CC*#Z4U;EWVMR0[,N6HK%;#46X# !?@M;A;
M#L[M&#R9/\"N;H\!H7'KW#=(8+5* G/KN)^:P#QLC&C<>N^-<J.AO0Z-6S^^
M0>53I3.A<>NC-[I\5DA@;OWO+0*O#OZ 5>@Y,7%OX\#YDU'[Y^T?'=7VW/K2
M7'&G*>W/K5^<I9QN2#@*PBD[EKKD33?%1N?6C>:%,0U)C-XJ;_@S&9$P!%76
M<9]";Y4+?7*N-"4KW/K=6[4.O@99E1<N@RC^,:+%<$X@-4TD!NO<>N*<\:>A
M[%^=6]^<,_XTM>IPZ]ISQI^FUA]N(P.Y^ .>*+%#9WP!-""/9!*P!(JKYQD\
MK:-'571NHP7<<ZRI-8K;" +W'&MHU3*X#2UPS[&&UC&#VYA#+H[]3GP2VA-6
M1&[J^5X4TWIPCZ33*YG!;42B!3QK:"TSVAVO:%S.&EG-VAW#:%S.&EG/VAW7
MN"63B><_ ,^^V>&?)(:_N[V4M3O,T1B[FEK%VAWU:%*Z&EG VAWR:%*Z&EF[
MN(UW[*E!O)[<14.]/T:_!X$;W9+PT7-(!(QC];L29E>5_%ZD'O)Z;8EN+J #
M;B,NB!E>5_$!MS$?Q ROIL2 VY@38H97>V; ;<SK,&9HC2H_#L*7FWGHC.V(
MN-O(24W10_O;;<=.4W8-M[$WQ [W]@VW,4#$#O=V#K<!2<0.]_8.M]%1?OA4
MTTG( ;>13BY)7V6)@0%W4<N(%:-;U)N%KZYC,HTV8\MIYT#_X39Y;&4J<1G3
M_C2//)]$T>(%:RS^F_<PO@GAMWE(8*!Q&$RBVY>(CK*;UKS)7922?XP0^_&%
M=K'\<?6MHZ#@+@S)/2@Z[?*;W(48Z\!#6YG#72R/>V%M;I5O*.YB<A>SXQ\C
MIUOEFP(%=\$X[D'1Z>"LR5V C<=5OBGF<!?!XEY8&_7EFXB0F]R%VOC'R$E]
M^49 @4% /E?YAO!@O8F 7UN9@X&W]JSR#>UE6F\B&-?65;XI4& 0D,]5OBD\
MO(F 7UN9TZK V\YO5Q-OZOGLSXYNJ5BMC(1=!N$L /DAWP,_%:".LJ=5L; F
MY:>A8*75RD#4Z>6G*?:T*B34\/K30!A D5H9HVED_6F$/:V*TC2\_C1@8,/3
MVL2@1M>?1MC#9;!B&3/XG00/H3T;>XX]68G0U9PVMZTJ0 %8<.!5(</"3R_Z
M,ZM#[FH@.Y?7.(Y/Q'?&4SO\<ZOD!SVJ^Y,\$G].;L+ G3OQ5\_O9O$C1>(R
M?(((Y1"AS=CPBL1E# D1RB%"F[*2N0RB(4(Y1&A3=BB7<<0#"+V(O$-[5HC/
MCEBA7(91$9_<X;,I&Y3+.#+BDSM\-F2!RER&T1&?W.&S(?M3YG(?X1 ^IS!%
MQZXL50LQRK4-*G.YE8(8Y1*C#=FA<AOWDQ"C;\L6;>..$F+T;=FC7.XI<7V(
MX*OW,([IR9+J$5%//3Y%YG);!IE<9>4_1>9R9X-K)I_T'&%=LLWEA@&RO6YI
MYS(.SS?;:ST16I-X*US&LY'/5<NSPF5<F(OTY;HDB\LH)V\4KQ3CW,7LDD/A
MU 2PG7AN3W[<3[R'Y)3$;I#BPG&".:B:&_O%OI\0VLG7<<(Y<;]Z]KTW\6+O
M8"E_CM#/76RJ!;S@(:BH<!>P*<2X6^* U>U^)O<M6BFX"Y_P0W(N1(*[R$<N
M_K"+EI;R5V)'BV;P+5I&N(L^\$?Z$XO(!^_Y/"11, \=$B4?Q\1VV>!=[W'X
M*_S#V.<9DCFZMT8C8V";FJ0KED)4P]*D@6'8#G%&_T-]DM4]4?PR 39./?]L
M3&AX]%RS^OHL_OCDN?'X7):DO_;8E<-?HYGM#W^]#S_ _<G?R6-V'D:'?&8#
MA_SS?\XCX/G+1_:5YU,(G ^46=Q+'K>XPPDF07C^%XG]W\<1S/IL9$^]R<OY
M+]_@0T1"8.HO8F3[T1E\\$;)-9'W+P)#A-&RCT_I!. 1$_ C%Q.2%3H'0(]+
ML> **VL</EP#@4-O*GSQ?-MW/'LB++W12'@W]^VYZ\%U[S>GS/MDWP'P:2P,
M)NCY0CP.YO T-Q*"D?"'3^>3S#(2W& RL<.H9=/[C[_(AO3Q-&/^3IYMX>H9
M-(_P*9BX^P:N; U\D#GPOU_=WMW\^'DG?/GCZJMP^X_;NZMOM\+U]\M^!9/)
MDLUF'W1"2'P)0L Y@?^%A @ =B'RGH4IW#>.!-"R /G_G/LD08XJB0+5Q>PZ
MZ@_73[2%<J6J=19$'EV[0*-/8*UZ)#O*=G'7?1#'P?1<6MUBWX/NFL>[MQS2
MSX67"6.Y3HS#Q7AF]@,YNP^)_>>9/0+%>6Y/GNR7J/=AWV)B:9F+209YZ3X^
M">'GF/I^*P*$L,B=.51-S2)ROOCCH^M%LXG] H8.PP*[Z>/4#A_@W2G5Z(L?
M21C35(CT)>Q]R<_IF"RKK\DZ'58,:VGL+EZ<CK@/(_ZP^[UE]BTI^R>I+[/O
M/[#G)<^$45.&_-93>UL3FY 1('@6"VQ%$OXR8O_W,?TU3 "^[^<XF&7\.+-=
M%^R?<V7V+,"O']=H3-^V0Y)@5KDR- \I0RFG,HS=CA)RI?:$;\3UYM,]I+0.
M*3\IAVWSR9Z ;4.$VS$A>ZP:)'0N0A>UJT2!/#N$3GALA[ L35E\ZQBRISI-
M61$OG2TW;$E&N+X8G9P]>U;XS\1ACE[ZDRQFK/DK5GQ@:\G.LGGJA0EFU)>2
M!;/(RJ1;?=/07EV9\G^OJZ^O<7D')0_Z ]VJ:%"J66QZKPW*4$NMX;;SYT,(
M(NV>I1!7=&5DN$=+3H;0I+)8S&9.//C#\K+E1U$1.'*F$IUG2LJ**)48A-S0
MBNH68:%6D&1Y2+;0N\*.RLVS[NW,W[VG_Z]*X3K*(=V=?;9Y>P%F0AP=A92M
MF19&RF%*,8.@ 5)5KH>05,4%*=N^$^A_Z4+-A4SM<73F80@Z3K"9;)T?A9BM
MV1=&S&'KF'O$(*GJ$ZYLA=(*X;*C,?.7'/H'^=^Y]VA/DGT0SW<F<SH? ;S?
M./0<ZNK2R]Y7K;2+T%42^+$!LDGZ[]OD*30]?@7E5^_YW _\+W0[U@M\8>Y[
M\4\RHBF=;D](=RW9%\Z9TA-<XGA3>Q+]UCL#6/@VW3A>YKX!BNC_KE9X^[G$
M&/WAPG<WOUB[LB>,@G!JQ[_UO.?XW)]/S]P@/DM?!P $4A$&11KS'IT->D-#
ME R-[9^NC7^/CCQ&QG,S[7@;!<6ER^*B\B,N9F\H:^) YT5>#JS%B\@;#)3L
M%Z_FKWH;T^B2V[%(3 7KQR$@3#0._,X/8B(8QQE >0QKI1@I,[5[>]7@ :MA
MP9&?2X9\)W'J'1;4<A9H.4/43:FLEGL%WW58!8BADDMIA1BB!<ID4QRH)B<@
M>D-NZ[7_" P+0H]$J5(>5.Z5YA*HO"9W>P7J@%)><.(%Y*BH ,F]H2*:NL&)
MJ8F8.9$2+H,9A;KSAE%:YY[&/>F207P3DIGMN0))\^O1"&Y"WZ9<2 \Y+"V7
M'3E1>T-30O.V:^@XH%GWH*.8BM7 KA55!<W:AK<ZA3&9N)1W0F0O@P\ZVKG-
M!!\82WZ,/GO1+ !^_ [DF5TOMLC@6_HTSY\3-SV-%OA'BI\.5K$DBP/9XL3&
M08R=*CAQ,HP9H.(54U2MCMG1'&CV[,2PNR"V)X*SH=^;-*"SD\#I_#LL?KE4
M_)$2-0"M#1(EE=?:A3C4 FO\34(MEZ8_$FITB]:P1-,L'3BK'6IOR';_&O@/
M9S$)IX+G/Y(H3D^3,Z/=1*.]$8U.>7('++E><:2HL%F]H3H0947AQ%!"[)Q(
M19?'#JWXJ!JB:?"RP?&F@M4!N$CQBRC,)C:UN'V79;?.*"-3K6QA'D=#(>R$
M-S>4,Q>^>[7@2_'M(%IL4Q,UK72V&@:Z.</0P4!W=1A20$W#"L_+9LD;LIF7
MA;N$":W<)3#*G 6CLSE\*!$D0>.GI(K>K*CVD[[DQ^B/B#"_M:A\J70_R=+0
M@NX:B [HZ ,@VL&)UAN:BLH)2MY&PG;S \1I=-,!^Q&/22A,ED&QYK<\.JR(
M#ZWFE!=)R/E[X#O[<H9H06I=&7!B!B,Z3K5,9Z.CF(U'-Y1%C;87X (\;\B'
M IZ=.9@WQ*ON+9#+\;H,CKQGXI[]BX1!AO@-:!T#4Y&5CYR8SXBO$VGORO!U
M6,>;O>' $C5+YP1C;R-GJ![#N<:D#:Y6Q_S5!8I-O!NZ)5="5%$U8?6&RD 1
MI?(E!-J0"86"A(*4,]VKH""I$@B2)8N&4I57Q7V>%P?HSUZ*UYJ1)7T&:&GG
M<3 !<D;,\!Y\9.D%\4N3!0W7^*L"$]U@3HM6+"C3YHIL2$BL&WGL8:K)2G:Q
M>"06C^1.PMH;>ER62)HES3O9TF@G[3O7Q2X-0<H25H[$4GC5U(!ZK5WL<<<J
M5+DWE >B;O%2^0[% \7CV/)6-8B' N)AB9K:DNAO\\D>F-G2;;]B%H1,7(.1
M$&SEL6;8/C(>-N @DW6A!E_V%LY1U=[04$MG(6(2#&<P*92KF@,F6F^HF"TI
MD=/\\E#3(M)>USEC$5GE2KKD?G%&358P;Z?1H\.?@1=@1E_:,R^V)TP[K#6B
M/]*6UNF)(TOBQ91&4)WX3'$MH#+X M5;79,ZY=@\V?!</WY9>C3'[6^B>5K^
MR+0[=^*_I^Q@01U[<CFQH\@;><0]4F4,:-:VK)=6&>CM< :GPZ>GZX"3F<"I
M]$%/](K>N%>T'C_#PPS\+$-KNP@GJ%*ITBXMJB'*@])GTM!1X@QHAQREDP)-
MDWI#4Q.U\O$\/-EP1#74-6V/)5&Y5?A'BA;-JM M42O?@+,-IP$0;Y7I_2/Q
M1M,4)$M4RG>(:3IIOGG/ S,8NNEFK4K5UI>X@"9P/8D+1Q_?U5@9+E7%,EQ=
M ])QJ0VO58+1M-Y0USKF#;5+,U>0 X!A\I/D &2(C]X;6N6#5KBKPAE<*MG=
M+[IL&[1)JE5^V<9-E;?GM#0_0/2]#M1%+!O\1/.XBN*(:W&GXQTLEDVAFMBV
MKVL(.N1@588@,T$0.EX-.EXUY1Z@==U0[L$Q]10UJ[)ZBNC$<0:SFC(/CE;Z
MNM0;:I*H&1WK/\*!JG\M^8 3N_M-;@+GU_1%98EF&QBJ*!M5[7(TGVV 0#N%
MKB\*-)IFH&NB;E75VX^CVGS<)I-E ^)V;RV^1LM][65H!D_YE;;F:X%UEHYO
M*.C)1%1PD@V1Q:ZF^OXX^:RHQF.;H8.DJDK*FM_[P&.H6TS\PY]X4R\F=*+3
M*5AXM*K@+"0C>#A)2^]&HN 'PLP.A4=[,B=8J[(52WF;2?4V]$CS SSIAG%N
M'>AZCXMGIX\XH]>?&TR5\N0%)^KQU8C+]?<OVY[P)=.TMW'@_,ELM>C'/(YB
M4+PPTWRNL;1TC=7Z1W<=17/B%AV8Q@I\JKHL2AE5,C*^2,0_@[7R2+,&;DVL
M%5YY<:V8>J=(BB:<"06YIYZ&>WIA6!4>6 G0&PQ;BDE3M79/.NU\\7YAVR0C
M%SQ&$F;I!*M!+!<@4#^8%G+:(/0:./Z;FIA% X0L&431#-'0>&EIC-@Y45RY
M+';,!#NZ:+:EFE.7_,\D0R^)( N>'\7A?$I\[%U\6CW\- OC)+/JBG'B>LF(
MHM)D]8:6*&%?X\XA9X\6K@PYAD21HPU:DGK?I0V#"Q@QI;0]$6:VYX(:7NP>
M8))T(VTWEORX 79<^^G9EC5#IZALT4P-6=3EJO;/T3CF!4H'C./JH:1P!J4W
M9"M?.,Y\.I_8=+?&)2//\6(TD_,'W$IIZ C&#G]MR]=/$MOP)O?*#GV@1;3&
MHL\)AXK*%RL<(*NJ* UV<U1WLN'1?FX-I'8T]<D@14/QHF09HC+8C7"<'%)O
MR;!>4]@!"W0XP706DC'Q(^^1"),@PG.(#6OP-1XQ-_9RG4/7/C",? 4V?2?Q
MC]&=_5Q4]O3>4-%%1=G=IL@O>&AT\P:NO+J\9G#1)@2JJ%F[>QXG!U=W\IY?
M.\>RWHG\ES(]R"NREW*GZ[9  "L,H##'-F53$I8L*EET0U$R1=.J*AQ9)+&:
M=RO]K:+N0*RE/.KH5J0Z$"6EJAX1M:*N2D->YL60SWF*D26/5+8:O&)Q'7V2
M*9<L<N4M%>XXG'_NW= _^4]R7OAN>6UD@>LR4$1)KZI'-Q=K(,H:REJEAUFK
MD+6!!+)FR:*AR&V0M>XX>WLZXP33J1>S/"2VT"<%*!Z([ZR5:JZQ-$VQ@YHJ
M<- -YO<3LL/@Y.E%%YGGR#OWO<EOO3BDZ72[Z78I;6C9Q77*+-$L][(2O+M$
M);4"*BE[J=2=HB![3JC.[R,PEVD[$O+(I*SV3E-MO)_!X$-L V87:>GLGX1$
M]^&'X6;.^O+'*G@I2X=8J3!6$B+8#MW6L/T76MJ>,C(2XH *C$O\B)TL]-GZ
MP_9!/!"CT)L*(\^W01YH4"V&'YBH]'?FLYC)U X?/)\)<G($B%%E2=)$S&&Z
M$WL6D?/%'Q\7)YD\GXV<W?0Q?5:"?OJX;;E@8I/\_/')<^,QA6U?2FR(5"S3
M-Z<_]^&G#[O?:W+?,O3,GZ2^G/G]OD?) QB 4LFCK+ZIF=4,2NLK2K%'[?M>
MZ>L#M9)!F7W#U%Y]TB'UFJ IQ<>:];2YJ+ C:7M_W3*\3FT "=^(Z\VG>V3;
MS+=[.9N%P2/=NO2%>S*V)R/:I#8>$^%38(=NKGH"W) 2'M(8'?UX'/@OPN_S
MAXE')E//1\KEH]QG+R1.'(1(KYSTLGT F'#KD(F'-,M'L_P']:N@5IB\N:O$
MS!38;#-V,;;T?E5FOL,LB%B^ZGE()G;L/9*5 ?;7S9/A*1^DU2WV/9!M'N^_
M9=/P,S8IZ1!JF.8GW)TW!3OW.WD2?@93VP>R'6= RUOG3M?^I4.GOJ)G2.;H
MWAJ-C(%M:I*N6 I1#4N3!H9A.\09_8_"?$EVTSA<G9U_(&?W(;'_/+-',+=S
M>_)DOT34 EHG"E D'9"E,1[L(]\^8NUQ15Z[[;36NV7U-5DO:KQ;9M^2LG\J
M9DBV3"-\)\^V</4<AS;8>1-WGWNXK1"R-\[^?G5[=_/CYYWPY8^KK\+M/V[O
MKK[="M??+_N[*J)KA,RK6JV<,<F%.WVY[DY?I^[T[=*)ID;ZLE!N$K_<2#L2
MDKPCX1W-/'HOO)O[]MRE%8#>(TN*L>3=U3.0-8I85 ,<HV .#W,9 _[P64TE
MQI5(<*E&"R-1(,\.H1-F%=I8I242+CY-@SD,[A@FI+I0V8GS<\:DX^)357 J
M,?+NQB%)R!YYS\(4[AI' @&Q<H7_G/LDN4B51$&1%)U=1VMT9-2%*!J86[ND
M%7$K7>E;5K%HS/[O3:6:N([5UP?% F#[O]?5UQ=V'%/U8WH]3EAXRT/1E9'A
MOJ:($FNS2$PM56[<583;FFOF!H/5)5HEFGI'0PN@G)& N7;8LA:X'?*AT)7$
M3*=HI;"\4Z14+DII2"G$5*V8ZGH2R$^:^G%D->$229P=S]/L8"JF]GHJ9HJC
M+V$PI7E6](E_]^+QY3R"J9'PZCEM)'4112Q64_R<W8">R5=$S>*E52"*"8K)
MCICHC8L)K3.@B;+4H9ZL*"9=$Q.Y<3'104PLT:PLU1_%!,6D<C$Q&A<3 WPB
M4]35TJ5$3U/AH/DV#>V^"LF+Y&WO5=T_$1?%-*\A+!&TV9KR&ZD15V&D@S+A
MQ^CW('#9H5,2/GH.B6Z#2<[V'JNU=<"*>!IZZ2*>V3#FO8!)AR%T( I0'81,
M!J&!SDLC=830B3SDZB!DL38^FE:ZO@1"B#,('? >*X.02>LF&.) X44+=7W3
M[O<PB")A%@:C(VM/5U1<,E\#]XY)U0'SD/'FAK$F0U+DWM#42E>S*T3^%A0I
M?9,X.F C;N"HF#I60!V+JE[5!A#"K,TP.V!'EH"9RF VJ"HRC#!K,\P.V)HE
M8,;JYILR_S#K>O0Q/<[F/PCD>48/P46YBD_4W5D=[^?D_C?44N(GB8@=.F-V
M/,TECV02S.BQ3VPCT4SN8<*-"]_]O.+%5:*DBBXW-"]$U =555MMF>W281 =
MS,RK$$2T)82H&:7C80@BSD!T,&^M0A -J']E&KQDWB"(3I;552&(S-YP()K<
M) ._H3Z1OQ,?_*4),Q%M=^KY7A2'K)H2YFTT$IA/^ %2=;'!C2,%R^H-:98]
MYFYT#4:'XO*5PLB2>D.=HYU3A-&IXN[5PDCN#0UQ,"A]- YAQ!F,#L75JX61
MPHY86G)5G:\X2>1H@[EX"ZQ(ZL1-[?!/0N/L&$ULPDZ\)9,)/3/CN]\6C%A*
MTX[ T#U0"\,\78/( 1NP$$2TWM RJDKY08CP I$#]ETAB.B]X4#=;1^,$&DW
M1 [8;J]!I)C91@]IBI+)"X+PE%L;3KFUP2C^$H3PT:<5>\>V_T"$=P^VY[\7
M)D$4810U-QG?56@>IRRYG(<A\9V7NQ &ECSU=V -K6;]B8#V(L7/FEL#&E)5
ME-VM]YV&9!B_: V<#IC2A>"T@QAZ_$W;K>"!>&DO7@[8U36J'XN&XC5E=[\=
MX<05G$J9X!$,'?XZ':Q@S#2C;&!A3/7D2/E,9B'PA?7@2/;AIP&,[%_L"XRN
M-A%=76?)Q1HWZ Z&XX2$_OV=9!R=DR49Y*C\?CM&23@#S $#L01@E-ZP2\5"
M$2]Y#,02>*&;.3(F?G<-, ?"L"4 H_6&6OGJ/1AU;<-52%XD;WNO0O(B>=M[
M5=D=KUJ.R.8(K+W)2@ YRB?2>E/I5G=4.)S&#FB:>NF,FD(\:D$4]TV"+4>A
MQ5)@,VC,292LTN>G$&T=0%N.FHRET#:@.U"R4=5. 8*MS6#+4;VQ%-C,WE#1
M14FOZLP(1X5U6E;.D6XO"J,PF#($>/Z<UM@)ELWCN:SPV$+A*Y<%M6?C>%D4
MZ=IW@BFAK"PLB;0"KRC)N\<(\B<>%&57"R+2;Q9Z.S9M?="3)5H>8* A]!!Z
MF09NC="3:=+ZP-PU/Q!Z;Q%Z>3.UJH >+9"KBDJIS-%38"\U?!>#6!!7 V3Q
M%0O%^]MW_]OQJCS_D40Q+:(4";;CP)QBXE*=(=R_"/&8".1_YU[\(DQ)/ Y<
MS MLUJ-:Z77:U_"*L>8;X\SUBH^%5;Y**_(9YFZR1F&-WS*#HLN0RNLIU0,I
M5IA:EG8WHA!2[8547@^H'DC1@^"B/JC '4=(<0.IO)Y-/9 RN-%27:^/3T\*
M"8 %8$;@,T?P^',F>+*K]#F3#290WOP(J6Q=3*G]ORE&(^^9N&?_(F&0)4&#
MWO __F(JLO*1DQ-<"**3G3TI *(<NI@>5U9%Q<"BH5T#TL%#*95I(PNU45=!
M=/"@2J7:2)$XTT9=#TA> Z]#0CNX^\(D\!_.X.,4.'Z/;6.:*66S8$B:0O49
M.)$E)_3<<8:0H$O>7F <L/MR H-N(U:Q?XW X 88!^RXG,"@FPT9>94(C/8"
MXX!MEA,86F]H2+ME&GD+Q35_XJO=5W4]TKFT9&E-G2 >DU#P6/!:>$<K,[X7
M!9^ F3L2[FW_3\$9V^$#P7J-C>^K)TQ+MAE21?4]\(-%0E5VD0.%GK?3L"@:
MYY"IP?HM"A2C-^2FR!F"Y421S6/!0H^Z96Q*(EK:C9:<9G)1M-"S:KO)NABF
MK,>X6[/DA'M6]G)AWL7V\Y&&'*;'-Y$]>;D\3_AC>9PP*62:7'='^7GU'(<V
MT-7S[?#E.B;3""22OCT,6(."A= 6WF!@!76EC-ZC?&79\P+AMN&W4I.3&]2J
M$JM"KY9>;@JQN\VX;2%T3Y 2VBR(6:U<,:N:)>K>MXCAXW)0F\4P;48IBX;.
MN_V P70,II?WM\"U$DCB$&.DO(F,X:5*2\,2GXA/1EY6.$)5P40L72<:8U><
MX2.7CY(+'UIO:&(DO&OX.!@)SXT/NJ6FH@+I&D .!K]S X0V])1;DI?;O(78
M[JN0O'RY#RW;KOE.XLWDF[95$FS;BM#0MDWA\ DK)BOI%60;=C^$W38,GG3K
MI3#R3+J#(FM5-<;I/OQ:B,"&=E *8]%B&R&JAF4&$8K5;H04A:(FL?T,<[ ;
M&>(+BET/N.^QF,%Q2(UFXJ[9S,([/XB)H._P"(,F39K(G]>XM9))8.V/T9W]
M?!''H7<_C^W[";D+?I(9;>OG/US!#?%+8<&EE6HM4;&PT3SGN*O-+#XEVNBV
MMV@,>$EW1<0U; :?$GNT ZXA:GC<AW?<5;XMT03::/M<4>)F)_T-1HJ#D-4_
M!CY[S18^?K/^:%[K%YAW?,%[3>\-54U4,T2-+]>3%]2U#7(5&K[E@&;030=3
MWK4?,/3[-O5;7INW'.P&H-\,<9!Q_!CUVUM$7=XH;SG4F;1:MYEQ4H@OT'4]
MGON#%2 !+LY",B9^Y#V233OWO+;0;8[[B["67^G+7KZYH",2$<&(=*R(CEV/
M@5S.I_.)'=,E(@[A01,6WQ)L]Y_SI,$"EF)MXNS-BBUW*ZY<+)FR"#_>L#@5
M6&PAL6F1O>2_A>TVJS<T1*M\01&LTLB;W9^W(=1)\:;3Q ]1D3EHP8)0.]%A
MH-,"+#GMKQNEZVDAS'C3:'DC&:<%7)*CH'&@T3H?W'CR21B-O9D0C>V0T**J
M&]U*UYN;_I+68MT,A= 0".:N-;M[]\/QLONY78QB$H)<%I9 E4J@9I39T,-$
M#=[@E-=\S0&G7<300^EE#@,A7'B#2]Z]M>JUC]X;*J)B(9RZ!*>\IN91VL?@
M0_N4C6\6#AACIDIM04.V[W>Y;NNN]G*7_@Y-4 1':"-O\08,Z>+]TG1VH%;3
M,;>EJ]BLQU8[,4I-%FRL-1,& =H"Y7D@0'EJ6%JP_HN*L5O+$95G-[!9CZEY
M6I0:;*=FH'"M/+L>\;S<G\A5=1BSFIRC3.'DBJ3_7M3-RCGQCFBCO%'<#$6T
M4$*%-0T]4VR*IEG!2;OFUT(4L3<H8A6>.:E2L!1ZJ%!7JFHMA<+% =3>GG#5
ML@]0I9BI;/W2E3)]T5'$^ $<BE@U:3@5BIC6&UJBKG,M85SNI^2X?XTB*DS;
M#>;W$[*3P8^CZ^KHN ^G57$VHV6!G]WZ%#,2)FEOC9[@:S-FD%1(*B15FY1V
MRP[4?=E;;%XX$^[MR'.J/E%7^C0 5_3+[W=E38]?47C5N[HAX2U=UE\-Q"LE
M:O/""SY1[*5O27TK:>5;Z;VAU%<JZ"S(P78S"D0;!.(8>="WY*%R,3"8&)0N
MP(>R@+)0^^(@GVQQ&%"I,"1<'% @>!8(XV0"83*!X,!:ZGH([,MKC0C*^%,E
M=KBZJB&RIM<Q#7&4/_5Z!>B#NH(VW"FG*RHZZH.B\49$HV[/JIQ #"2Z>,J[
MUF1KVSF@5+1!*D[G8Y64#UJ\IE^J326*!HI&W0O&MK-5HT H+"BW*Q!<=L5H
MOL%SNZ]ZT_N#KC>9QZ3RQB,8\VJ#%FY\A_!S@KZ]>EC%/4(4">X-DPKV" \)
M@H:[A"@-+5D@JMPE/"07.NX3HDCP+Q)5[A,>$@D#=PJYV"DLXUEA?*OE\2V.
M]@H/Z8L![A:B<'3*QRHM$B;N%Z)<M&31J&>_\)"$6+ACB,+!_:)1Z8[A 9$P
M)=PS?#M7=7W/\)6#X+A5B&&O:AW:*SOT@031XC&IILU2LO)Q"\&1 V%)(EG#
MH,V7^I:YH^N;#[JA0+X1@:S>B<Z-?O44;W]%";#-4'5W,Q1W1U$$N5\3<_KK
MN851/TX8CQS&*U)I](9*/Z/#*JZ)*) \"V3.O=D"DC"H)EI15C.P*+:V6TB_
M>8'L^L[PW]D'X@HVC,A^(+0=Z!10P/SG2 CF<13;/IL*#T6=FKZ_C46E6DKJ
MM\BJKL?J/M51XFMY?_>:?^]=FQ/U_&KL2-I>C1>J_B+1]-_GTWL2_ABQE3GZ
ML5+TZ2J=I_[PVA).M]D&HJJ:HF+N1IM:Z]XBN#)C(J<%ER4Q<"FJ)6H9&;0(
MKM:#2VX07'*JN2115ZIJUXG@X@A<1H/@4E+-)8E #D[ U76?]G,]Z<RY!"J]
M/ZTKGY!@JXV"M-WUHG,"=Y0=NIZTLBYWA45.K=(2/8*?#>6&(3QKM60K@Z?&
MX*F9IB@-JLK;17AV")Y'V<*5P5.OTAI&>'8/GD=9TY7!TZC2GCX1/)F]_8'U
MFL[-W3MO2B+A.WD2?@93VP<6;W%7E@XQ5UD%F7?_7=+(]1Z'O\(_BS&M3>N?
M\RCV1B\50C+GH&\)$6S'":;PVA=:!\8/8J!&'% HNL2/"!58GW')IIM7'@ T
M]*;"R/-MW_'L"0P6?I@2&$]_[U33=VI43&9!Y%$(G8=D8L?>(_GXY+GQ>"$B
M:W>E,)%6M]CW,!* ]]Y;IG;XX/D+@!F;RL A=/#YB5P5,I1-NJS_2X=.!<XS
M)'-T;XU&QL V-4E7+(6HAJ5) \.P'>*,_D>A.1W)3>-P,?@9"/[9?4CL/\_L
M$<SMW)X\V2\1%85UH@!%T@%9&E-5V^0#X:4RLR(\$U,@S<2>1>1\\<?'1<:S
MY[-9LIL^;M*</GY+/AD+DI_3-^NZWI> >+VE=YR^.1U87]I.LEC<IR;W9?RV
MO"EUNK>P9R9ORUZ_DOE2UWI=*6TJK3#AZ+Z?MYKX[5L LP>G2(V.KJ8PPW?R
M; M7SW%H"Y^"B;M/4YE;0C3(WCZ_NKV[^?'S3OCRQ]57X?8?MW=7WVZ%Z^^7
M_:Q]O2WZRGH7Z;M:!(1OQ/7FTWWF22[CY'*I\"_7%?YUJO!OEVI>"$8",R_&
MP%021K\(5_\[]^(7X=W<M^>N!W>]1YY4PI-W5\\S,.,BMO *\3B8P\-<QH$_
M?$KHA"V1X%(-'4:B0)X=0N=,^2/84[#!XJ@J;J0:7MDQV[CA%CQDL: UPJ_$
MXKL;A]2L\F&!\IZ%*=PUC@0"TN4*_SGW27(1V-6"(BDZNP[^T+:,A"6K%N;L
MEMEPZB4;)@A++S,8]BS9?\U:E16M;\E&YD]27R[XO:HIA>[8-RBK;T@:9V,:
M] ?2@+,QF7U+X6U,@[ZD9O_2W)ADN$'C#>0P*$WFC7MFW]"M5Y]4>,M,T961
MX;ZV4B1^7Y&5/5U]N$L<W)IKX<0];F@UR&F2L@S9))8EK 6S!*3>8>HQL@F.
M/?-B>X($.TRP'_&8A ))G!G/C^)PSAP>I-UAVEW ,&F(SIX(,]MC[@HB+S_U
M'&<^G4^8P^V2D>=X,9*M&-D")KPTDAV2,?$C[Y$(M$@!TO$P'>^"F ;R-V(Z
MB1HLES-?,1FS[[<ZQ <6.-@)& AIK$#KQ F&[7#O'M&>A=Y$D#/F_383-O-1
MK> &\V!]@_GZ^Y?M+>;$_KZ- ^?/\OO)@V0_65%%6<>:Y5P*7=N. )<4BGGD
MOBH19^JV0#!12)?(9-,CGQBH*S$P00Q$1=-%3>K0X1V4@BY)@5F[%%B]H27*
M&>5:4 (XP I*@%6S!"@2/6@GB[ILH B@")QJ5J_60MG)CI:VA6!/\9$*I(&>
M#!0EFJEO[A8+PMI * M-RX)\.EE0>D,57(3!;I$>% 04A&;M(EFIW3"BAPHU
M0QQ(,B>6$5;-QJM.71G\U,FJI13(=13-;=\A-"UUJZB9+Y!G$CI>Q'Y,LE*I
M?CEN6ZZB4V5=#NG+ZH&8/M/0E&/$_3P/@0PW,*P@/2^VJ!U(W,M@.B-^Q!H>
M% SU*Y(&%HPN*EUJEO/V\)6U^JLY5O]=;/VW/9F3?=#:-0#TWE#1>&F9@="I
MRH/2BGA0I4%D9(.HC:V(.HN?__B+J<C*]C%99 PR!AF#C&D58XJLA'KU1M2Z
M?3[RGHE[]B\2!EGKXF )(DX,+(RNX%7U1E>:'R!>Q?M5W4ZF94O*V;V=5'-9
M+1R85UNKW<7/)APR!AG#KT&\&QK:M(@O7%H?BQW%NPM6!\UN;,^]]B^34V;,
M,K[?MHQ_TE,LD1>36Q(^>@Y)3.F?Q D>?/849E5GV<EF;ZA*NZDH"#3>@(8:
M !F#C$'&=( Q%0:1FE@R+9Z6S&YG7*QU8A\%H1"/"6W%#GS"M J,I"-CD#'(
M&&0,,J9%]IQ\P*"#%?^:+?A?@R@JFE,M2[VA+IIR55T&$#0HS6^.,15Z9^6$
M6>9+F+N]=?:CRK)2;S&H@=$F9 PR!AF#C$'&(&/>&&.*G1 Q<IX083;9Y;I)
MMK*FP;3^,;JSGV^"D+[P(HY#[W[.NA[<!3=V2/RXL,&ML))=5C?.XR/6,ATT
M3J"F<@.U;F^@[2^K>N(02';W&XF?WI;UG%(^8>5114[Z "NZ*:I&Z8ISA?C6
M4 RN1M!Q),/YJ[$4FW;K9"S+EJJ[D*DBZXM"IH9>NE(+"A4O($.A>D6HZJZ+
MJH +1.NB6E55/T"!:AQ@*%"O"%3M95;E055E5E&B>$'86Y.H0H$-Y71%6V4S
M*=JJB(I1)F"!DL4+TE"R7I.LTY6 E6DJO2+J@]T":BA6*%:\BU4AJ:J]H*Q"
M*^WK8 ,JNXL4;S;@,;W9CXI,G^#^-2JI0 HWF--VY0O<X>AP=#BZEH\.&T*N
MT:[82IJSA;/WC.T@V7ZM[<_M\ 4;0M:[+ZL<JAY=Y;ZL(K-]67F@B3HWYX8K
M %-I '$D=]CQ8E,D:G%0DOPR#<1 M5 ,4 RX%(,#-9HJ$ .5[GT: UP)4 3X
M%($\A7O+B8"&32%1!OC>!<F;I%^!-+ ,,PG< RVC47 ;<^]1%KHE"SM)EO7)
M@D&+:XFFQL') !2$-R (A>2@]KQ(A:9Q&9*H:28GEA'6G,>K3EUS?FN3AV^U
MB$TA.0KK6\TWA81%8FBJHFF4CN]DBP'6.FIJ]<^3Q%VBGU$.Z\"BCJ(L([+X
M1U8A!TLME,Q<*\94:1_&L*4D1_#"ZGG(&&0,,J8#C"FR4.X$Y4_84E*5L:4D
M7M6QJQ!">!5""*]"".%5K;ZJV\<"L+$M5DY%QB!C.'7+=^/7C7?I4Y7>T%!+
MUY="H*$&0,8@8Y QR)B3AK*;6#)5GI;,;F>-T<:VM+T2MK7%W3QD##(&&8.,
M0<;PQ9AB*7QYJR:6ZHFI:KWA0#35W4+TF)W'$7)0I#EE3"&1SGL"N)Q$Z]Q(
M=+>WT+#!+4:=D#'(&&0,,@89@XQ!QM3G"^_4.N>CZZAJT+-M@XSZZ&VL+8)8
M*^*DG1IJ VZ@UNV--/X;W$IYNGCP)'\\][A5S5/VN-UF74/AN'JAQY$P5]=
M9F?FK1.V1IK=JM8)F]VB=*%T\21=M5=WTZ03=;U%R4+)XDFR:F]_J\FG:G^+
MHH6BQ5/\XX1]<#7E-'UP4<10Q+@2L=,UQ-74$S3$1?E"^>+(.JR_,ZZFG:PS
M;A6RM:<YKO9*<]Q7@]>%+ZND=R>^"]]UVG=AE]8U#55,J^?KTGHW#@G9WZ=5
M?T-]6B]FH3=)N[3JF$):S\ZBJIYP9U'3V<ZBJACB0,7>?%Q*';:@V12)6HQE
M(]D"-$1-XJ4)#8H!BL&F&-3>I54;T+TZR2R]"XXB@")0BPC4WJ55,[%+*\H
MUZ%Y]71=6C66&B59ICA0=@6BC0GD* O=DH73=6G5)=:EU<BPCE 04! :-HQJ
MS^/3:;:1.A!UBQ<'N=MG/+#%)D<Q60Y:;.I*;ZAHHC*H*I&6@VR(MX>O+-5=
M0XO-7>VM GK4JC(!$#J<F+]:G3TT=T&D98,(RW!QA!\LPX6,0<8@8SK F$(K
M88--,G4=FV3B51V["B&$5R&$\"JN(=3RA%KL<(BE\Y QR!A>?2K^.ASJ-%&W
M2_F)G04::@!D##(&&=,!QE08AVQBR1SPM&1V.VD'.QSB5@PR!AF#C$'&(&/X
M9$RQ!*N3=#C4S=Y0U415VRWNC;E5'$$'99I3QA23Z9.(M,6/2'=[$RVKQZ''
M^(;;:!AY0L8@8Y QR!AD##(&&5-Z=^- V=H3-YPSI-Y0%S5]P,GF!L+L))MH
MIT:9S!?*NKV%MK^XZHD#('O+77=$[K*/NFNG+#]J*$GY45T6):GV,N4\1.!J
M!!U',EQ=\?_N56K9%+ Z*K48ZJ*8J:'5WG4-A0J%B@.AJKTTJJ&QTJA*:2,0
M!8H7@*% O2)0M1=:-?13=2]$B4*)XF';^71E6PU6SEY655&JM:D:2A9*%@^2
M=;HBL,:@-U1T45$J2.M L6H<9F]-K JU**S= J2E]B53-*W2G8=JERB.VQ.^
M'NC&%^&+3O,BK/:"5YVZV@LVLURL__F:6=YZS]C*DNTRV_[<#E^PF67-N\GF
M*7>3+;:;K)B*:*F[_EEK4X)* X@CN<-.'5KMG3H&4K+_JXMF^:0*% ,4@UK$
M($_7@W)B(-,=6VV ;8U1!+@4 ?U >;4*1$#!9I8H USOW>AY#]A7( UJTLS2
M$)5!F28F* LH"_7(PLZ62WVRH/6&JBIJUFZ"* H""D*SAE'M&=(#/>EER2)_
M7!A&W3[3@[TL^0G)ZH<.^)R@E^7 Z T-4Y0&I:M29HL!UM9IRJ7-H[K+MB$<
M#'I#4RW=A1BAPYGUF[<N4S4@,K-!A/76.,(/UEM#QB!CD#$=8$R1E7 G)'K"
M7I8#"WM9XE4=NPHAA%<AA/ JKB'4\HQ:[&6)!1*1,<@83GVJW>ABXXVY3*DW
M5#,VX!%HO $--0 R!AF#C.D 8RJ,0S:Q9,H\+9G=3MK!7I:X%8.,0<8@8Y Q
MR!@^&5,LP6JGIF<=C>],!4PT0QQ898[8('10IM\J8PK)]$G:TYHJ/R+=[4TT
M[&6)D2=D##(&&8.,0<8@8Y Q-68$[-3C;[3+H*GUAJ:H&!8GFQL(LY-LHIT:
M93I?*.OV%AIOO2P3,FR7<J:SWULY7<I3T;\5LLE!OTO3J*_?906\;2B2US!X
M.=(7Q[:CJ((TK9/G1GIKFH/:>FNB *, OWD!KKV/IVG6TL<3A1>%]\T+;^T]
M0TVKGIZA*+THO5V47E[[DUI2'?U)48I1BE&*3]<+U9(K[X6*(HPBW$41YJKO
MJJ74U'>U(>G%TBQX57NK^R!Z\2J$$%Z%$,*K6GT50@BO0@CA50@AO*K55R&$
M\"J$$%Z%$,*K6GT5@] '=EX$_NMZC\-?V3_TON&O]R&])/E[Z\?% YT2&R.R
M=&AG1&%EHPD1;(>>>+?]%\]_$/P@)I$0!S!!WR5^4D[:9SL&=@P?/#^&-TV%
MD>?;ON/9$Q@L_,#*T/7WS&?/9!?33 >DZ3#B61"Q"G3G(9G8L?=(/CYY;CQ>
M[..LW97N=DBK6^Q[&.8\WG_+U X?/'^Q3V)L;N$YA,XL_];4G3<%0GTG3\+/
M8&K[P(;C.*!NTF7]7SITNFGD&9(YNK=&(V-@FYJD*Y9"5,/2I(%AV YQ1O^C
MF+W%3>-P,?B9_4#.[D-B_WEFCV!NY_;DR7Z)*#37B0(420=D:7W*@WWDVT>L
M ^S-NHT)Q8J3;'<*:#VQ9Q$Y7_SQ<2%0GL_(QF[ZN,E$.MZMG2GVON3G="J6
MU==DG<XF5>CIB].)]F&B'W:_M\R^)67_)/7EO^98)-*)T<WA]7VWS5V[,,'"
MOI^W]NR..W\%#\D/[._DV1:NGN/0%CX%$W>??MG>>1UD[KS^_>KV[N;'SSOA
MRQ]77X7;?]S>77V[%:Z_7_8W-CD[2<B5CA:^$=>;3_>0TLJUAWVYU,>7Z_KX
M.M7'MTLM3!NY7MK16/@R"9XBX=W<M^>N!]>^1Y(7(_F[J^=92**(+7M"/ [F
M\#"7$?@/GU(TH7HDN%1CA=$Q!$[UF+*S+<\9 XXS3JK@0I(3<3<.J:GB@R;V
MGH4IW#6.! (BX0KTF&=RT>*L)[L._M"VUM8E6S:MLC5SY;0+$TRP+R7K;)&5
M2=?Z VWPZLJ4_WM=?7V-R[U<]O6!@F,Z.":S;VI%WWV*,9FE+)V=U"1%5T:&
M^_K)Z;+W6_GOS]!UB3%:)$,MU9_%'#&+V=2'U5RBX'84&SV_?M31]3='P-NL
M=6&'?%P"N<#]_//AZ&(+;Y%2&E(*,54KIMI:L7/;.<B.+_R8$7@$#5S2#.I'
M+_9(=%Y;L4Z\OPQL3G,BH(A3R150VEJ+*1_!:3N3I)2N\(ZV-7F_U==$&(7!
ME&XU@##/J3P'B60'?E1UY:8B!&WNM$\^LA8^[=/P>9V<@;="1^YRGKA;%7;[
M E"[7"+MQQ)HA4_RJ+VA+DKZ;B6:-I;:1['@72P*E==\_1A;#<*@]8::*&M5
MU89 B4")J':AR-NLH0;9T.F13U'53%PI4"YXDXN\A4=JD N#%10R![QV-E$&
M[0N49"-BK5LHS>X*"6# \29$\'<<,_B9?NG0'()YNOF]ZYB]$G*IR)-E+!ST
M!SJW1/U,9D!(CX&?[3G;4UHK^E_L"^S468-9>Z! X3I#X.\)886[??=BC2]9
M>FC0&RIRZ:+<_*S0B)7#+M"Q6#%AS2I?P!VQPA56#K0).!8K%NV7756M4\0*
M'U@YT+@D'U8*&<JJQ"KVF08O4*IH4Y%_"X^5>SJ[MY-S$-,9\:/$VB//]&_L
M"]B D<?Z0'RB++E<XTB6U,@@-4KI@"1V].$*'8?*'.=&AP)&OU*Z!ANB@RMT
M'##D\J.#-MV5=DMK(CK:C(X#IEM^=-#-KH',"3K>3+SM#S\D,(!_@3$&]C/\
M0NTP9VS[#T2@L4L,N9TDP6)3:+XDG+B<AR'QG9>[$(:5//5WV_/I=L$G0KEU
M9S\7=GMTNJ=<285C=)XY0=,!\ZT0FG8!0S>4M%V]C'!I*UP.V'-U*I\!S>[2
M,EH5(9HX0E,=.]UUHHIN'X@#JZKVDQC)R[U7.X*'L-ULMMD=V\_".[H-#L-[
MV9%H]+9.F9J[X$V280)2=95$5S\1GXR\.$N,K-YP-["77S&C7\Z58CZX55L4
M'[+4&_+29!M!<N($SB/@(F?!!=4)1TBI=(>V,#[H7L%NJS0,]]7*<FIH)^?"
M//^1++(7:;FZN1\G,4#A_H4=(B.L%8\P)?$X<#$,>(I-V5Q9PDF+I&^,+=<K
M)A;UFF2Z&R,:9H<.ER"HLNR^DX)*8VTPI:K:<"&H^ #5<>=\J@*5WAL.1#VC
MKRJ"JLV@.NZ03%6@,OC25&\F:,BJ:P+7!$#')/ ?SN#C%(!P'V/ \/2)?PMN
MI.[:5V#('?#C,[ C2VCHH8[=H_D8 VHS0@X>:R^$$+H7@PF W4+(@0WC@@BQ
M>D.M]%8=(H0KA!R(#A9#B"+UABHO::*GCPP>69V[7"7T).'/\UE8T(^#\$5X
M"KV8@!7]5'VYJ/K=GZGGNA/"M<P<M,Q21OR=\N$SL"%+5.AQ#*U9QS@E=5L<
MXQ8@XZ!%E@<9"DVV;_9P&R+CY)98'F2HM$((ZHQN(>.@!98'&5IOJ$NE_?N*
MD('MXK ;7WNO0O(B>=M[U9O9C:#)YW0GPB6KEHS'%IIJ-$C4 A/E8*&I#190
MSOP(Z:[?Q90F)VUN\(V\9^*>_8N$098=H]-JY*8B*Q\;C2(5MW+?(H2J/.I6
M"$.'-XD5NDFLBHK16%X\0NCD9:DJTT(#U$+M@5"Y\J[U:B&3'RV$=C>Z->V]
M"LF+Y&WO54A>)&][KT+R(GG;>Q62%\G;WJN0O'SMEF3OD'.Z19+D!D8T.7"M
M3TD4$7IPV'>%B6??>Q/6LZ1]>8)MJ-%P,%'0"8D=D<\D^>^UO^S@>VG/O#@[
MIF3UAKK:C2Z+G45)3<=^#Z*E6'A2E7I#4[2,TAG;B"B^],[!9,/*D23WAH9H
M9G2"0;7$$8AJ.N-;-9B4WE >B%FE2UM]PK=Q*W&PMQDY:V\W"X-'SR4N+2/S
M+NUU]SZSPYT0C(3JNI-7M&EY'X0N"<_B8'9.F<QV\80%X5HEIK64%00V7P*7
M;U(F?WKY(Z)%GY;">K'D;@7-+%65=0,W,CI*%-[XS,W7%APC[ Y&*TS].3$R
M6:$;/:.,^G&I'0A/'N%92RG%$P.5]LFF!?_+U-Q&D'8%I'GM\1.#U.@-%5&1
MRO1R/P5&NQ+HK=2$=[THM>+API)&?$7N]%X0=%BR\UKP.<7Z\QI7UP5[5W9I
M3P>SC(5>B&DM".:\1?3E#3]7CCX35H[=:C((OI:#K\(X=4G(%;1D:'MJ4<Z
MY'%!1\1E>W%YX)3 27&IT9I*HJF5;N!0.RXQ5X6O7)56[4(D!6$W?93SVK83
M<MQ_6$Z.??);'AGGBT2V2D42EB/AF^G1<3,/G;$=$1I<F84THA*_B )H<3]F
M"7>T,<>,%KW&=+L&TNUN[!=6</PNN'" $2&Y25ET0QETX;M7"_9DF6%R;VB6
MVL[$_!:^T')@5[((6@I:]#2_150,!%-WP'0@DE$CF&A-0%'-:*&*8&HKF Z$
M'VH$DT9W\R2I3+F"T^3<->^.M_LJ)&\;8C4M\'C"P"'$33L31J!/J.^SUJ&P
M??786A"?/N3HI$RA39=N@27?['@>>O$++ V7P61"V NB'Z.]39A>K8ZD<5*C
M#7M!G#A/LS2L<A@@M&R;*9KF;CX10JO-T#KD']6KL3BIYX:P.O%&[2DTELF9
MQGH[P?8-TW,<3%PZ-R$D#O$>[7NP1-_Y04P$8\=WQ2A%?3;HTRR,-^1N)6@_
M1G]+F?1SR:,B6MRJ3(MCP(LK*.VQ.^N#DBXAE+H)I3UV9BDH'38"=-K,2Q(U
M'1M==PM.>^S+&C63PIMFPD@Q1HHK*4:5%(-@ A9Z]W/F>@EQL!XL%FS'H76V
MB4LEAAYBBL>$9<W$+\*4-8['>#(/F3-7C"7?&$=*.,^ZVAMJHFR6V;S&B Q?
M4"J:5E,5E+3>T!(M:=<"0RBU%4I%DVJJ@I).RZ*9@]WR0PBEMD*I:$I-55 R
MN-%*;_H$O)=QNJ3:(E9XV*ZI"E;+DT/55K;0Z>EX4<IHQ(U'E%N.SOIK5]6%
M2;,W'(@#93<_D[>SH C,AC,JR@)S%WL6W>BNJE0P(J^]R#M@2Y]6)1H2K3QL
M992QX0V8W3Z_O33 4YM[K\E=9=&INBO*M4N&3U9T*D.4<Y?],>3>4#,J\(>;
M7T$0?8T4G2J OH)+"3N7:4EUUBQ&</(/SKSE8$\+3I4>S;.T.HO!(CCY!V?>
M,K"G!:=&8V667$&;:RQ/U=*KD+Q\Y0FU:OOFB^?;OE-%]:\\89T<]^<J1GWL
MPW%PG*_()<J G8)%'24QKB!\K2"E,TVGGNM.R,FA]9/,TG0.&F]<%;^G5R:[
M_B%QO:0BVR3P'\YB$DZ%D>V4Z87:: 9.0X2N,L5TQ;0?HZ_ E#O@R5?*L!^C
M2\:NPCX);9\B2LVEWJ1,:4L65QLP=& SOGH,T7($JCA $'4(1 <VSJL'T2 I
MJH48Z@Z&#FR!5X\AVBS#$B6M3-_OBD!T^@(##2'B<V@_P8#!9/1/944V>AZS
M(3+75/CJ%7E[]02FP4F9@>):&\%367FK4LIZ(-$L35VJ*E<.\<,'?@K4L#I6
M^0QD5#[=!$^!2E7EE ]-8M%%O>%2%+G-Q>;CHNV^"LF+Y&WO54C>-FSY<)HT
ML)-R/LK((JCVE"<FKC5URG.9(5+M\9&!6MDN$:95MAB=>1/23XQ.C1YNDBVN
M\RH1G=QDI)\8G7IE&UN(SA:C,V]*^HG1F>S=:U8%6V8<'0IM55IO;@N]RD.A
M>+"[D4.A&6)<S>&2P8 V0)<'%30E:WZ907 V<F:T/G#2Q QQD+'7A^!\2^ L
M<V:T/G!:U'V4+ 3GVP9GF3.CM8'3E%@79&VW;PY'X.Q* #T;1%>C$7%B:G\#
MZ^ '7R#/SMCV'PA->6.&.\UN8W_0(MR/P,*&6SIV1'PKS'E+F/AC=)6R[J<=
MDQ\^%67ZOZL5VWZ2* X])R8N_>'"=S>_6+NRL"C3FBZBGN%I']<"J_G%!M%:
MNYE>"VYWH:GTAJ;$=0@(,=EPXAX/&E2E!32,C(T>U*!=0&LMYCH/N-68$6]Q
M796H^S%V8%!([(C0$'NU9GO=7G>W);E(//UHF;V!>= F!0D$/J=0@,^3.27K
MNG9(-$9A(:<GJ4'*]3KC2%T*)74;U$7B\!R#VJ"!>]4LD[R F.X*IHN$[SG&
M]  4M2$J1AE_%T'=%5 7"?MS#&J3Y?&H:IEV7*< =;?W"B[WN16B<$\>/-]G
MV?4C8<;P(+SS%@@0PB5TV+T[3#ME.*%5PEY$UE7S]1A7*1E?2O-G+YH%D3WY
M'6@[@SLJV@FT>D-5$0UU-XIP7/2K93&NSH)25MH+2DOJ#34ULQH\@K+-H%1;
MC$D9%.5 -+2JM@D0DWQ@4FGQZFTIO:&NB:9>U>X_AOM?"_>_8H<3^+8^"_P5
M7[S&G#N./*!_KR<M+3>TN59@+=9?M+&*+*IF:?W5AE19%-4W+ZIMEE4-G#)9
MU!7^NSVBK**LONEE5<=E%47U#8EJFV75:,VRVNU-MJ\DBL[W9_ )HS"8[CLK
M7[?__TH,KW3<CB,6Y-=Q69/KA":K49%MZ*]UK5:%%ANPRJ>J;'$2B$3)0LDZ
MG8U0JVC1*@>F*&4<UD71X@"$*%JME2P+%RV4+*XEJZ6B!3/G;-%ZHQO3B=>:
M68.9_SWKA)CG*K#;#>;W$Y*$,=YV/*\<43JA%&O4B87UG,RJ/!E5M1NJ@LE\
MA^%1J%&H3VWI%)9J)2E?.T"Q1K%&L>[*6JWB6HU"C4+=L;5:Z\A:S2(4'V(;
M7@7_=;W'X:_PSV*X*;,TVK%Y%D0>G>!Y2";@RS^2CT^>&X\7G%R[*YV$M+K%
MOH<AS^/]MTSM\,'S%],W-L77 0Z1,#\X[[PIB83OY$GX&4QM'Q"Z!4Y9.H1.
MA0Y06S*1T67]7SIT"@7/D,S1O34:&0/;U"1=L12B&I8F#0S#=H@S^A\5?+7T
MIG&X&/S,?B!G]R&Q_SRS1S"W<WOR9+]$E"'K1 &*I .RM#[EP3[R[2/6\-?[
MD#)Y?1H';F-06'&2X0YH/;%G$3E?_/%QT7;,\QG9V$T?-YE(Q[L%._:^Y.=T
M*I;5UV2=SB:-DJ4O3B?:AXE^V/W>,ON6E/V3U)?_FB/R5C# !H*7'W[?R;,M
M7#W'H2U\"B;N'@4IF[EB;'^_NKV[^?'S3OCRQ]57X?8?MW=7WVZ%Z^^7_0T-
M4^UTCU\-A&_$]>;3<N?. ]\E/FT? 7\Q56?3F. U!:@W%6YC^#AE8<9@)+ 8
MY)=)\!0E>O?=W+?GK@<WO.\L@=Y=/<]"$J4--N)Q,(>'N8P<?_ATZ@F-(EA"
M0%S#J! E-A<B9:=F0OH[I<KZ6K2YC(7):/?]O+6.'1?T3F22J;1&N)#@[6X<
M$L*"X)'W+$SAKG%$0]S A/^<^R2Y2)5$09$4G5T'?VPO+$NV["S$^]7XVB4G
M5]D#:5!496N#OJ:JKZKL_-_K!9^T;U"RW%<-#@>ER 9O@Y+Z@P&/@S)+F0&[
MYKBB*R/#K7(#+M5N!=TG9NX=5D*W\]ELPE9#.WR!U2#Q8L#D/FKS;&ORF8>V
MK5+$2\Q,;LB7:.\=K2V PD8"YL)?UJ*W0[ZR4IA)QQ/>SS\?J'51&V*[1BD-
M*868JA53V.2^R2;WS0^PW5<A>9LD;\L/M+$P'8EB869[+AX[PSSCH]M<+9!T
M T#Z3N*L73B]-]35#I5&0WQW"=\[9?,+X]OH#0>ZCOA&?/.([P--MG;P73#%
M@A[N%66S0]58$?Y=@O].L?UJX4^+X(L#F1?X=^4HTYZ- /N91,QE$06?L :Y
M(1G!;!KMH=79ZK<'+7\GF!+&DV.EAQZR%25]M]?/<>EY'&3/(G#RF-2[P-G!
MADS;D)=N/(# X H8!VW1LAI%EJE& 9<,@=,IX!RTXO)H%%80O70]AXJ0D5IJ
MB_<L**,#WROQ8O#^-WQ_M]V 2]:Y+*)IM6G) O]!L*.(Q!'+W9QX]KTW\6*/
M1.>U.09X?_ONKVA/C^GZ ;?B<>$X, >0A9 XQ'ND&<38VNTD7:1WC)*MWHL+
MSOQ<,J:P?:OVAJ8(]DKYONX<1%H11OF\Y1PPVD6*UAL:TNZN%.*DK3@Y[#Q7
MKVYTJFY4I4R#>801WY[TGN;#M<#)8'VPC8P^V*W>+N'<(+SV'XD?!R'X0[A/
M<HI]DMPBM<:9PK(TZ UUT1SP$L]",-6T=W(2,)D43 :"J6-@VC$93P(FVC9<
M' QP5[=;8#K><BP!)D6BFLG294[ ]#9"B#<AH5DV GF>T1H?QYF-Z(G593:F
M[+E*N),E-;3TK%1: :/KSA5@CC<-#P.&5C4=E$ZW0<!P!9CCS;_#@%%[0TM!
M#=,MP!QOXAT&#*W%J/.B8=Y&X&^Y$SRS7UCU*9H=83M.2#L4KF5)8%2PD>SI
M/?'UFX19%[Y[D;#JZXI3A=TG/<FPQGS(;H'KZ#WC2L%%V].*"J;OMP!<Y7::
M"^\15@JS 8TG*EJ9G!=$&%\(*[\+72G"3*K(='7W%-_)$?8VXHM_M^$1?ORR
M-$)?,,)X.A/T:1;&&9*U8,I"D%ZR),6B;C\G3AS"I*X,Q"UM7 (P*MV_47?=
M?LP?XP@L%60AEH&(#!!!E<(]2BHU\/+CI9@IIRHLX&'M]I8]N<8I&V.LY=A,
M#J^CM@9/K05SX5#>C\6QM$M[YL790%7IPKB;"%O8XVAQJS%$92.[P;OH+*AC
M-7HJP,)F>8C@$Y]H*8U<G;9Y-(W=/%=4NV\8M*>)7)8&+ST],Q!EK:I<2+ZZ
M&;[:"Z\Z1.3L*GA+^T4Y3C"%U[[0^@)^0'MUQ0&%0]KXS%EO?.:EC<]&GF_[
MCF=/8+"+%FC]/?-Y=;('N@*^[::/^B9=CFSZJ-78]''X1GHT<M9I+B<..>S^
MV$Y"5MNM[_M"R1[H+OEEJ637^DRN-Y5<5YWK,ZEQ[)OJ&AE>2Y-,42#/#J$3
M'MMADL\&5M7BTY3M#&,CS78VTDS^32S;[_,IC-+9]1<WC>SO=CP/R8]1:EJ#
MJEA9RX.>0,"&GL'E<3@G>ULQ_W,>Q=[HY2@)N"53[[7U8]N8V5D_F#$C]X7E
M_UTF%J<0A ^V[_V+38K1,5A.\3Q+L55J<V4/4\C3H7J3FOD[6Y?@PM&&OJS0
MQ9M$\2P(8^'+G,!R\A+!<A+!0N/TA7?QF C_\1=34:2/*5_8)_DCL$?H+>[L
MO1>>;%J-S E"^,P6*G"V0"W1^S_-(WAG% %GDU\I"X4+)Q;>74SN0<;M]P*P
M^)L=.F,0%E&0+4OO"\MA>9%@"S%QQC[0XN&%8<'S_> Q@4;JH?2%"WJ=$-%.
MDQZ\&A2H/8'%TF?^@#""R8G")'@Z \1&$1L#&#]^1-^1/&GY#H^ FEV^WR74
MP85O #KS$?B;('#PB:F Y&41&T3@LT68?9\2,1Z#B!"?F<&4%.R%S.L01F$P
MI9]=]A'6<3K Q+V:$-N'"1#X!Z;+G!,V7'"6A3&Q'U_.W'G\0M\)*H+9 (]D
M[,%MR<L#>!-,WS]+/HU&9V%@NX)-A^HDU.\+=S":A:2-;4JYO2$ \,N!2SO!
MU\%Z&$#9UDM7_SOWXI=O!!8TEQY^C&)JHOQX@CE%8V]V P.GS4 ?5HGR9\I*
M<]'#V+L;HG\5@L7]=*V\)-',"VW@A/#/ )Q/@1ZQ!-X(3UX\%OX[F#P&PN_@
M]<^$=SWV"6!*XPW)2DNU<G_Q#(HQ2DXOIM %'MCN(S6OP.NE;'/)(YD$,SH#
M1M,5Y1?Z"<!&+_S;S>?K@KK)GT\FY>07)%(SE8\%WUN5]F"X30%/63&"^;P(
M/ZZ^G=%XP$.B#![LB(!ALW[MAG!$Z[AV0:#@,N(_4+5!N9%H_I2QMA#2XH>4
MY$Q2SN[GH4\YE0@0**')W&7Q"KHT@G# RT4A!&EZ8G*X]C4 X^?WWWOO16'\
MXH;! _'AF[\I@).5'&WKD&A-,RW%WZ,G#,+ G3OPA^N%Q(F!"'3D8!AY5+H)
MR$,"H#4M$L((4NT*!(M2U9J\_8[J,'GUIT)INM1NVP&5#QM&0[FE*5_H0-8U
MJ7>4R7([OX]BVX]!?#X'\_OXXCZ8Q[\'-"P8^ X0^PYN_C0)G#]7"L%*U(_G
MSXE[$:??T4?S;^ P*5'6#)RO'F !U'ZRDCW0B=/)T9F?=]+ ^!(DAD"FP2PL
M;&617;-8DT)")8RX:_5-)P%X2<PQ^O<Z4KF7P>FDE/)7>%O1^#25"$4<F+NI
M%YL+[@+*3+G-(R(X=C2F?U/Q9B8/J)'[A=E$'_'(LGJ7-@>]AE+K(0R>0"4"
M2=*%++&"X@Q79).\8S (V$O9<D;_H KJ$>9#39BB)%9>W\6ZA.?3_UVM7O$3
M5"BH"F P_>'"=S>_6+NR, _HP6]1RMB:I:M^2GD*IY4[(;PK-%O=?'VZGSVP
M*2-[PFR/Z\5R!-\N-=C264LG7W;*"L!.%E5S-Y<B60XCNGC1]7(OQYV)#3;Q
MR .!L^EB/'&9M0FS(,ER- G\AS-8":<P]?M8 +\>H =7,S/VZIDA\O.:F71I
M^[9KPW)Z]?D2UM.*$?49QO 51D0'!/2['</KZ=\ [WL0&O>"Q4$*TU&E2?!F
M1B>G9;,5EXQ (=)Y)_$W:G80Z@W ;T]@@X^+35.W7I\GG>,=S(O.E^&$;9M]
MI;MI/^Y!J2?XO9S#D(Z8KD9/E5@9%3)K=Z_WF)(-F;#4=W42&O:%/Y9^*T/[
M)("A,+L3@+RM0ZG;Q$3)"<#W )-F8:%N[(NQ*T(J;2&+TU8E#"R!D"+CV@?=
M.:>/ODS'\<WSO>E\2O7*S]6+"P.$'IW412FCC$9?N!ZM$^.7Z!7E,K(G$^$>
M5,,3NV6:#&Z'+IO4G=HO<,_B=^:4T0/6+^PB,!BI"<G,_"3FN?# EDS;W7'L
M@BGUPP>#= ;NTSWU#E2VM&N;A+-]'PCB4$WN@REP!K^=3>WP3U!@A#GE-"0
M;P?2@<L"#MHT"?/T+NZ^"3?)-Z"QF7<&C N>HHW' Q^\*)H3 ?QJ^'L_D%E$
M.MI)'I!>UWBW,=C]U_0%[N<Y'>0-##4 #4\?=D?S".;A"[OH)V'C< NCV@"U
MEXWJQ$*8@HV:Q-.C190F>2V=+R7%; ZZUTE_ ]W'OH?_BM3RVA0*%U;]D"Q#
MF-'\_I_@&R9@?IA/[#@(7]9E('K-@/.#Q;">2$@2-KB;0]RP,^']GV"E$&YA
M/1]1UD8S>#FXX>1YQF0*ILM,</KX[LF+GLC+?\[!%5>L+"O8 9>"JA;JFP!*
M%CKD*WW V6<:BXC( U/9-"0$"WPPF;R<T2 4I=TBJ+6(OM';_T8FGNW8PBKD
M18,,-_/0@=6"A#348,-*22,+$[;-<V]'FP\;>:# 4AL??KE_$7[:TQG<'0?1
MQF._@87UD"PHG_K_W:</!GD&Y4J_@<&#+;((B#F)W9!L%H6@EV.RT 7L==34
MHP8.W.\0DFP^V3/X] PR%!.@7Z'URCB0U5;$0(:%U'/3#X4E?0"N@"+J<H9=
M3.,NJJ%]W#LO,M\)>7(S+QH>5<6L\E;OA7<A-5$I8&F^CJ SYKHDMKU)]+Y[
M0JZPZKZ443Y).,A,L!FU%<(TLK(RQ;)2DQB!B.U0X\6?IU*RR&5*PA!LK63K
MT*;^\*(-^X2 P3-G<<HQDW!Z+=V4I1(8^$F@/Z(;)X0*)C@-3HJ"1!7;#P^P
M*,#]8K+XAK8'RCM:1<M8<AHLRC1>MCX.&C>4!Q]AW4A.C*0Y6@QR C-2-X),
MC$*T<PQH_A=BAP++\DD"W73T](_#5+.7*U!?N-T9(WGV(K@(".&OSYV2]N#D
M/;C<209BTU ()3/HHOND?LMBOP=FP:Q*D-AD>R40IH0DH9-@Y1O1^<.$J"U)
MHSJ".R?5S_]N#$-,N4\A" 8NI07H33> U1H$48CM/PE%5;"<=[KG1.T)$-2$
M>%.X[R&)=A$PTAQFUDZ7BG[)Z!DL'E%:RR:9)J/5V 8_G[[MG@#=DTB\-YU-
MV,V):Y\N<4=.].^4G[N(3+@MKHUT*0O1NC!DSX\%S]F$HOEHY#D>W \#!_J1
M1X\]HGH92.RD0N06A7'P!. -10K(P)^\;$!X)-P'\?A<>">_W\8LXS&;X *S
MR=N\1[+%H(J1^9%!Y)VR?T1B(J)K8Q"30::D22X-";""NK=9:JQERJJ^?9.2
M][WM=%9C?SHK9J9B9BIFIC:>J(B9J6^,X9B9BIFI.YFIJ:F6^CGN*A.#R]P+
M9EKDS+T0WBW#-.\[EX?!"/&)Q1I3IW,5(P:O@ :EV4Y5$B=D1>^!2DFB(]OP
MA5<^>FR_<\.Y]M<3--;CV&G^)_7MTJVU54(#]3PVG$5O.8@DX\Y.W'CF5C(.
M[=U:8KY*XO&N>8]TE1K-:1B'!@-6^_SQ. SF#V,V?Q\8(L1/9 (N<RHK221]
MX5FDGC)U&V ]6WR.R#''WX1WO==^[KUG_FBT$2?*[5']4J$O%9'7Y['7D6J_
MB# #_=L&*%/D@I.^".X ,2,: Z#<\.@V&MO/G:7P"J@C'0: J$6*(/!FLE0Y
M"Q=-7$M2I%Q.DA?ITKI$8+K%E.S;@0PF^1;T0B:-X'PGV8FK-(2U/,4(%%X"
MIS1.%"91H1'+1&11HY"L[T6EVX.KI,<U&++@U>9&+U Q#"9LIRJ:.V,QC7,Z
MP*E[^B;:B7H>4J%)@P/+A,E%_ -N@Q^CT7S"6EC?Q[;'4CC71)@2!+Z"MS@.
M+-7PY^1E:_<F8%3<R#6WD]J([%ET@]@.W70,\1I!7!8<7T68DAV@/9*VQLJ<
ML:6N209;/.X.*P<6?F2AQR3\GBPVVTKHWHX\%G>BV3)L@V4*7&&^!0LU;215
MK_4TC^#+:)1NT\!/:]6[$_L45#3%B1U2:,S#B*GLQ:*3!/Q>'7Z*BD0VJ2$%
M1H)+Z9W\S$(Q2: _&2A-^@@7D&"K4YI$Y2R'3R\*719YC:B )4:PD.9#+CYF
MW[L^/X;@-"/")U1TZ"R]C12,9%-X%0W/C] /6W;=:=*'=?.X].%/%#\_1A=+
M25_MBV5D"6MMRA)6URQ5-DV*@T26&&,:./>TF9C%::F"=_;[Q+O9_;<DMF[
MO'->DG]WT])U:1=PNK0+N'5>1O382\K,K>!S?B+O<<38NWE:.>1!LG(47C?N
M7[9RFMP=]0R6Q,)$]Y/]\T66#4VZF001]5Y6^[/PQ#7C8!;"<[P9/7GR0,]9
ML<TZ^)WF5KF+Y60SRO&N]_O%Q0TUU:_3U68&1DNBJU>^C,@&YM/Q3*CZ!PN2
M66>T0K,]2??LUE:5M2VDE6*G.]*V,+*]< ,Q:X1*J> FRQI<,Y^D.]DL">[U
M2("P"@*DEN'BU1[=CTJV7].4X7CM\>NK$'41F<^X>"=S*$B2DO<9'D<SU-*0
M@YR\+<<2'(V#^<1-\OYL-TW8_N?<7]O99PMG$DK,L_$#-%C6+<FW5[0](;@N
M<SY:P9HFO(BDF8KDVKI"&9U)BX0!5+JHC</H3X5@(571NA//_(@_ 1DPIRF3
M&(9U< 6FL[4]:CO9:%VW?Y9G/5*Y>]T#31JX;)6EH6Y"/&<BEV#584!*?+2%
M6Q5$:Z.C9_]"ZG=070 L3_([X)T/3&^L1"V1UL3P2XG!_DRC&NE]&W*:8QZU
MFF!\("U9FN\K6IJ_!"$\UT]RW6$QIB=IT^2'"]]E'R=)F&?O:BUGK-;R[FJ=
MOBGEL/.2G-J=Y%RTCV+:OO6<C2YCS I7J_S"/]S9XA^EFAN0OR2FEZ83T_,A
M'HPPV3Q(DJZ6NH#Y*HL[J$+VF#+:*TY;XA=E+-_I>][U_NC?]H7/[%,:=\L8
M)W6Z%@O!*O)!3XXQ'\V/6;C @QF$B?^9&"7T\E% DZ;I[H&P]BIQ>\:B<#4/
M U&X"!]H\H]O"S<D@L^78^JO$N$G\:>>?^\M3XC^_/9IXX HA7DT%OZ_21!O
MIOTN\4I5\,I_7O<G0=\#AL_8^%+"9/%J+70ZCQ:'H5.%1V@JU[,S9F=QZ>G<
M2$S$FNWWC,$7(F&4(F&1;'IO3Y*HT.II"::HATR=Z>18[]B+:*M<AT6B-][
M)A+2O)-YNKXL^K.N/9+9.]2<2Y_(C@XOF)F.?F%*)$-.%@V6!K1XWR*Z!Z-=
M7.,$P/U_)<O4(DPV!>"-80#46O+8N4'A'3VG^+Z_59!NCY;'_!-.\D\&F'^"
M^2>8?\)Q.@+FG[PQAF/^">:?Y,H_T?C./SD4U:\A\62_/\FCY[CFRJ<QHI#6
M7/+I8;8TM6+=+PO2XP1V$F7)=MZ"C;VQI4>:NI+KSMLOZVX.??/2?7(7YSF9
M\T%'L3@EX.^DB<2K2:2F_TX887U&(!TDIJ'>/0[:UCC2X&5:PHN:CAGN6O+:
M=,B;CM/NV%-7#+0C/31#9](7OH-+6'!@Z=OV>6Q]X6(RH;X7H\3RIP?;2Y.'
MTIHN]*F;#E8:JWTMT68M* A,6#%QN0XLP^&K^$W6J],$#!HCM!]M;T+I>P;W
MGK$SH=[R</URTWHQ6K:SN\@I.N@1"G3K89)N<*_=Z*:G!ADV :U>2%_V5N*#
M5PFK[%2LGVC.$XWHNLE&RB)$G" B3W92&@G*,AI6T8ZH+^2+/K(:"[?.F+CS
M"?DQV@I"7J6 _@DC6(M WE$$9<0?E8Q8GI(9?UP+542K&6VFO\P71Y>7 :<M
MH3\0J]RW1BC;BVGJ<%)+1=_CK)_<G=4-N:@[JTA]5;5>=6?S/DJ6^ZJ9?<N^
M1^W_7E<U'!0.BM]!&:5"0#NM-Q1=&1GN:RY.HE:*=$9)W:9B*Y3%8G-YO9N]
M[7FM+LTUJ;:2S)BY;D=U)=Z:=F;GG4Z1[2+=:MA,P%AW@9&.Q]!Q.Y!0*'K3
M?G(<T#R=FNM&8E)MTM(IDBW2DH1%1A*2#9%6.\D098BR4Z.L\%*?W<#ZT#Y*
MY<T7#P?!V,27J4%)KM!>M+2GGWK.B1?L.6$HK_:<R!>=DY<5U:15:$ZE/6A4
MHVQ;R8KZIA^)\L(=3M\$9M2Z,*-1S&BE6T C9OC#C):)&;89D+JH)7"C,UVS
MVR, <=-ZW.AUXL9@N!D@;KJ'&Z-.W S8.E6Z93;BAC_<9/=@JP@W)E?ZIK +
M>%PJ75.<IX=!CO+[,J;9/9R;==GP5F\H]<W=#B@%,9Z-M=ITX];K"NO&-X$9
MJR;,&!+%C%4Z5H"8X0XS ZG&]=20F:XI[?<A;OC#C5PG;A2F;W9[6"!N6H^;
M['AV1;A1&6Y*^WV(&_YPDQW3K@@W&E?ZIN-;?S^_?<+MOGTPSP[#5V#"Z[WA
MH"_S$MK D%B%F,D.P5> &8-B1MUMN868:3UFZ@R_&P.*&Z7T<HJXX0\W=8;?
M#9/A!M,+.HB;['!V1;BQ&&Y*A[01-_SA)CND70UN!A)7N.GX=M]Z\3;<]MN#
M=S,['%_>EA_(M"J'@:&Q#F(F.Q1? 6:4WE#KRPIBIGN8J3,,/U"IKAE@BD$'
M<5-G&'Z@4=Q8%N*F>[BI,[U\H%/<F*5CVX@;_G!39WKYP*#VC<2+3=SQ;;_;
M)^)2!_"_PL"W<0-P'^"S _,5&/.#WM#J:Z475PR2\8>9[*!\!9BA^?!R7\*=
MG Z"ILZ(_,"BRL; P\4=Q$V=$7E3 H4C]0T\*=H]X%AU9IJ;,@..C"M5!X%3
M9ZJYJ3#@<&,7'W "%_5D8:!D/\[P*GZNZOBN[K7/JOC\G,\(P5W=?1JLKB(^
MIMH;FCINM702-'55\3$U!AJC=%XO@H8_T-2YSV+J##@ZG@/N('#JW&@Q#0".
MVM<PDZ2#P*GS)($Y . 8?0E3 CH(G#J/$IAFHG%X*3W0\;W=S8[.N+F[#_(5
M%?49!>'4CG_K><_Q.;SIS WBL_2Y6;)@]8:R*%M*7\:*:!T$5455?XJ!RJ([
M-:*D*A7D!R.HN ,5W%3=ZEP063)35YK>-W@YF8/(JA)9=6[G6 K8?:;>5W&E
MZR)T*CRU4% IJ6RYLTQ,ANHFLNH\UV!IO:$E@3?*2R6-K&[CKW7;W=\.M;$F
MNN^<]PGM=O\MT.;V;V3B E]O@6&?TY[$OP/!9Q>^"Y^7G6M_+!LMTT.LSDOR
M[QW9;G=+@ZC;[6XM?;?=+7WMJMWRLALRY?6,-6IVUUZ^UN;Y0'O;BENGLY%S
MUSWY;JT?L#.QH\@;L2;= NU#'?C$CVGC8Q@2#4C$M*DW_#9^C>!/8P)SCH4Q
M7'I/X._D=TKYD>#.0Y"TM>;$8M)0G5T])3%KV9PV1-]\BQ-ZM&^S#;K'):&P
M('GUY&(/._=B8(R3AX#!#*1"D73A3+A)^BPG;(=9?%FVF+Y=MIBN;^"O#G/1
M9WVS:WM(9@$H->!(TK_]-4E*FF-/B1W-PU7?]DGP!-R N7IQ)#AV&+[0IR5-
MMYGLC6PO%![MR1RN)1%<$T0Q[48?D<FD+UPGK'[M(L&+TK?$L$)DO4<$2-(&
MZ?3*M1[P</\3!8W@!D]I._BM\:5 V]88%.)/XV!"^M4H!,Y$_F($@@13W)KV
M4EZ7:L"EI-B00E&8VCXLWA3)\.<+6^1=0DD=$E@?:7MUX,\,,$:_@XF3*&8B
M[GBA,Y]&,05?Q&Y-&XU' >5KG,4(/P"VPC4AH([ 8_<K!0 24'#NC 7/3]^Q
MV>K\*9A/7 J.9&XO&:_[!=@>1?0]%+83S[[W)EY,E6'@9XC.@C1P\1EKI$[O
M"DDJ'^R&]''I[53"*.*6@P!;@BJ*CH)L;0%A_,U<#JCNWX)8(L14+<$EGK]O
M[1:\1.4D3_.8QH7;$@5,!3B*:0O[!]#-T=@;);J(CN$=O//) [4RMA_)>[AP
M:O\3OB*C$7'B!:^2Q0X0L?9"ILR6"AU>-)_$45_XO&=\5%DNYQ&1F4V',WD1
M1F$P78?F+]'"QJ&*:>T!6:@3@2) 5_BT6$]$-J[E1TI4QX[&P@A4)HSN"Q4]
M^B+ZU$=8=.<A)?Z6=-@NQ0E5F71=AF4Y3%=G$.6$H@DOZ,\>;?CG3==(L7QY
ME.B!T812DI$Q)>IH?5X;#$T?ZC O($[?VA?N-NCSZBO)Q)O"]VR$<7JMD\XK
MI5T$#(_'"[AD<RM:32[C;H#+/1"=Q/$$[IL#KI?*8TM\=PW_ JY /O%.Y4RC
MOL/_S]Z7-K>-)&G_%03?F1T[ N+@/N0-1JAEN5<3MNPPY>V83QL0410Q30(<
M')(XO_[-K )X@B1 @"0(U<2NFR)Q5&4]F969E4>&_>N0C.D*?TK;KC.S;>DN
M9JY<2XM;G*<H&"?Q]EO2P:5W&GF='XL+ED=O J1\(*_"SP V$9 NAPD6:XW>
M2__BT%'9]@S)&C[9PZ%A.I8FZ8JM$-6P-<DT#&= !L/_4\U.=M,HS 8_A8WM
MZBDDSI]7#FZ1U\[XU9E%:.$M$P4HD@[(UFA;RG7R@<V)IN""\"$HK&ARCIUI
M1*ZS#Y^RT%;/I[.D-WU:I3D^?LWLI$O ?D[?;-M=3=;QY>F):/KB=%Q=&-??
M-[^WK:XMY?\D=>6_%CEE91/#@]-K-)L!39XK9$>\Z:\A6[IM/R/P-W\L>4P+
M#RF.PP?RY@AW;[ ["+\%8W?;+F>M@=',]8O\<==__/']YZ/PY=?=5Z'_S_[C
MW;>^</]PVUWQ0;22D M-0?A&7"^9;.O=6LC#]!#$A.X?MP'8=S[J!_")SH;*
M]OMT#\@SJ80/B>\D+JB"[L<5T;D\DR..?55<\P4O1+0/=V^H6T29$A D\#!0
M.$!9^.7C4K(%ABV;=K0%C86\#0A.>(2J%6H]L'UG?U%[+OIXP"*DDE99D#*=
M>\,6B6XL9UDIY@9\'(6$D3WRWH0)W#4"Y0MXU16PZS*[*.M63:];Z<',MNGY
MLJQY2S._V7X_8W8.#XK$S6" JPZ4_!$&/GP<,'%PX[NWU+:,[OWE:T!U]J9C
M$N4X&HUUE^*!Y"YJ,VWL)E2UT;K"_'^H*#GSP8,:OCS#VOR4M=![CQ/7S*-M
M(17SF,9K22_?KRE8!=1SM%@3=#2X3@@RRP]B888^ 3>8@N2Z;K1E?N\+GPDL
MW1-(3V!1E9F"7V[ZOX'I':%==-/_17^YDFQ1Z-PSB_/1>0-A_(&Y.TU-^G@M
MW$\ EB_I'@Q"?'$EM8K' 7I"H@[NZL0?42L67Q7C\0Y8I'CLP]SS9.!%]%@I
M(L-D[*,'$#V*['$Q/,Y=/ Z-0P\,-GBK2RW>D/P[\> 'L&V?QA3(:+YY3)M(
M;P1E? HO&>+/Z!4(0OP]-3[1,*=^0Y /8X\Y;^GV I-#YQ9*:_P2= [/9^><
M> E\6MP%<( ]:Q(Q7\>$.HB$?R<.^A&8Y1V#_(Q&H'%VA9OY \<S,?5G4W_1
M?$[4_T#]\-2+0"?HKLR'79]Y,1>D0CHX'CWR<)Z?0_),M:>GF3 D\!IG+#+;
MF7DSV!$<NTU$&_@5_:U.M'DWS!G];$@!@+/G)O#Q7TGH1:Y'3][0U>"E$UJ=
MRGQYYG-:GD8Z<.H4R7>#/!$<YC(8R-L4%<3U09+XE;J7X#+@K,'*#/%SSA-V
MO+8$_5)$/B>@JB+&X3-S?."R(TH<WT^HRRASMF?.E2<"PL^G8H7Z9.=\*>MT
M'X4-X8^1-\;57GX!>D_1>X7',AZ ?>&W6N*350^/&Q FIG#JU#NS_$!8$?:\
MI76>/Q?=)DNNE\Q]("Y1BSFAEOQ.&P+P8OR6(!T?4*:ETE';*AVU*TE=2,>Y
M,2)<"3_GZXS4#\D(L(902"^] NN3P>_S F,H4)9DIO"AGSS%[&1)D:ZHM%V[
M&KA^X]WI@Z-N1[C?PWEB)OW\S/"BYS Y'C8QDYU44U_(/^IQ8E)I  JK \_#
M8QOF*$TY+(>/XMF4, =?MG\BUG ?B59W!KB626"DY 1E@$O@+>.U83A/0<*\
MC2LGECE#H:*9'000GWIH8+\)Z=Q!>"#_45%,AT4?R#S#\\=&*R>AU"^YZHO%
M(8=D2'#\]$QM:4'7J9U'Z>,)$J,=@F3CN'[M[RIG)\4<AYK1.4A]7@F' +MD
M,$X0U_E1$0M!D*-.6SDQ$=9F3,2A]F*?3+Q=?K%BEHR^9,E4B,XH=5)>EX-9
MN-S-Z[LO? .63IE>7^5</&6C/'C#I,COQ$>%ABY!'R4\?/X&BBM5A(9"'QTK
MJ*^"1 25E8G8"?M=9&Z7]%?!F5+Y[2X=#O]M<0A,S_#QYJ\XTJO/23R#[YZI
MP 2IB 95R*0'/:6A%@())U%V.D]A0_7Q)!R,'-@W'=A/F,#]T.G_N.E\%)B/
M\)L#%PB9#Z*EYZH11EZ@QV4^T;6S/&:@$JJ>;J/[_B@>9@#-S_X -IN2FUZ4
M,BR )CT2W75HBT,"6W^T<NA'1?[R&27;U !T:,N$\S"-%51058%%_8EI((K_
M?(67@)KP%#,L_?*]6S"</!!KW6GWIBO"QIC$T0 N_\WQ_Q3QWX$#-PCL,O0^
MIZ-]"=A>]!/TBR>X%F?U!Q@6N/,*7Q(R%OJSB%I\]^A#<. -89<Q$Q(K2IXB
MT%P<:F?2\\.03%!%FF-\E=YTLDY*0JJ_I($*6;14_B*N!6<LXP!-TQ"]<PZ+
M@KFB43 T3 8>_Y>M$9U)Y&Z&<ZZDP5^I.;O;YC;V Y4W-.N_!.%7>.WO,/WO
M?K81_D;-.J;!/CIOQ0*(U<4V:'=Z@'_9V@P?WH&_=HJ$!33^AJIEC#(]]3!0
M59-RQMA[H?$\&)%"7>E, 1&>DLCS6<C5Y G/T>=\2KELM]-W+H*$5P!C/9BB
M@:0KZM)N;2ESID2/P5>8Z%><YPV=9DE,Z1+-P3*4S;!B2H&2T],;-SUL62+:
MRF:Y"1'ESI39&>.9\*'@JFN'K+K1.+)@5PY1-C?)<LBJFXV;'I8T$M6<KDP?
M6R<-:1 $Z,#_2 #%LI:G'=&@%>I! ,'H@!H+VSG3&L:!L[0[_TAUS9"*PI(@
ML/;LEJ"?W/L1V&FXC7\!P_*&.G)++ZT&AI9HY>1F"1_^Z_]9JJ%]VCINDN0D
M;9QJW#J.&P"0 TGJ&&)+X3 MBOP[@;>-4:&ACNT@75_%SE7SZW0)5+SO?<=I
MV=OCM'C(%0^YXB%79X_ X2%7[VS!><@5#[G:"+G*356D!PHYQPS*,1(82Y\Y
MY"O^RV<.-_F)/-0%C@H]]7A^F$_PXP$1.Q=D"F6J\JHI1(^!W86+/<WARW$T
MIH?#<YN(:>E+'M@L5*:DN6S(>]V*10UFW+@\-_VCM$%B='J&(NHYY>X/LJ0:
M,R\3N$(5C3Q+"W< G\2X<@-"7)HX25(?85E[U]X]W1_I*[Z$P>0SS0CTXB0D
MWX>_I;Y'4MZK875ZFBS*9HZO[C#;]PQS0!>V+JK;5L>#\:+214_#LV422ZZ-
M+)U\7O#*G@7,I-6T-.>8@MSIF=M7QL48#_0B39U9FH1&@R%8,,P36? 27-P'
M!6H>3L1VZ7JD9%F?XHHHP4/Y>_\N&H3!:VGJ8(\'1;24S3*BM8K+\TT0J]/(
M^1XJ7-*YS&1'ZCZ&7L!KNL+#LD"E2C*-QJ''?<1-!EG@%@I>>DJ91@7E'>[A
MH6@:5A7 -2'=K_'$AD8V=84O28A?BT(R1=35([++DOS."?T@B:-OSILW22:E
M"8T=:D73/K84/_6TL(&JJ.C;X -VMT]%.TG?P[#RXGACZL7RADL1=7YVDD>O
M&8P\D@J6C< )>CS.#M/G-Z4 VQ%#P92Y+9">I[Z&9$R<B FX9242KMRZ0J@@
M#D9D-[O?/WRIG=\?:%&B[\-'-H!5\0_*] #7\!6(%Q%_L6B@! Z#)-R$8CJ/
M",/[9K!D5X196J!/PU^H7TN*L?39I)2>>.X57DV_Z<Z59TRO'I TXYIM'AB%
MET;)93&8XQR];)XXOCB;P/<@+ ;PK&#BA'0]? >WOYH.=TH%N?6!2FXRAJVW
M5+@;"P*8^Y9^8VG7?<QWO_'=1;#\4GSL1ER<+IL;!BM\EQ\7UQ ;C;K)O]$8
MTVV%)^;U2;:6&'#PL'Z,L9(E;=C3.LQE2>I*S'-7QF-N2%U54G=ZS(M_KUI:
MJ3NV#4HVNX;<R$$9E<X6-LJC*;HR--Q=OC-VN%2F2EWJCRO'2S8]]"GJ-MM:
M+[O$7'/+^K6*5BOQ.YQD14@VCZI797'5U5K$]]W4FO1%9W_K1*.#<+*C8F;E
M*IF-HM!?JA2>+%QP\O3S*N=QJM'Y"8C#9&[XS]V_$^\%C!B_? 24C%VW=5&5
MF]*3DO,-YYL<OE&:QC=VIZ<HHF4WI2'!I;;^+ J7M+Y"9O*CJ770?MNN;DE-
MWZ2R5:/1-,!U7P.8Q<_Y"CZ0TO&1BM3I&:9H:V9#NBUQX#51RA\!>'*GIVN@
M*36E(V7;3:I[_P5V9EJ,I&[+Z@)[$31=TF>K-6,]"\JSET+#,=2<G+6+-40X
MS&J7ZY5AIG9ZFB%:>N5FC5QO+P24'VEF2E9HA"OMC1?EZ9*!UO0=@RA8N.BA
M_$;3L$R3=V-N'^+JD^JU(D['E%55;0KBJJKII4^.:E)(\C,&$'NM!O4>,<J@
MN1;#L<?A>"".C4Y/UA114^IJ+UAL12] 5WZGT-PC;T\(31-C7"U1M>O2HH\'
MS;;KUU_GE7T\'\.[5TL@<R7[)+M#V>#,^\52/03^X$ NM#"05JW>?9:KUHW#
MV191?QZ<X5&G:!G<[WTJCPE&L<8SD18)3'M88;7:*2XD=X5?@/^$+> /7#ZP
M:>^RM3N<!U4)C%I5-$W>I;Y]R*O3CU(_\K PFB5::F7QSQWFA;#S?5XRE"85
M"90<5\$0^VBR5 BNW3=;NY^OX%=<P)\XG._#7Q&A!GH%3E1 #Y-%4]O,'>8*
M_Z5#KR:%_UC0PYQ?2Y1M;@.<*O8E=OQG#Y/06/8;5_L;K_8OUHQY8BNP&STT
ME<T6Q>1SO!TA%*8VO-&:H[)56;'@*G[!5+FT1,I2UZT*8I[K5Z<4\]GB/3IO
MAQ6=5O%@5VJ0,L5QUD3Q7AUG9J=GBX9=V67(=?9"0/D]"%RL",-5]<;+\&RI
M*JA,%JMB5#D+B:OHC<-9?3*\!IRQP]><!AQ<-3^*]YU6DUNTR^)J^86(=+IP
M"SX[3&72:),CVZ[L>.&:>>.@5I]4KP=J,D+-TGB8.H\%/F^*?D7GH:9T>I8M
M:A8/4^?0K#F)ORHTU4[/!&A6=X'P,/6*$/I?9YQVT7"P'B<MS$MKMJZW<MU:
MSG.MGRM7R0O3_L-9HF#F*WZ3+7AI]M6VMK']R#7Q)B'L++$N^P V]-Z(>_4?
M$@9YV-*Q(*JER,JGEBC@3=\!'EGO95;+.97Z'NNHLM)YZ-15-"MH:8VB;^DZ
M@04GWA:I4W]B;^G]S.CT%$D6S=J*;3;:5.*,QQGO.&G+I1G/1,8S1<NNJ[C4
MT0W!; 09W35@JWJUT!/<OT0E%4CA!@D&M*Z0Z1*&UG;-;%Y:=>K,:-\+VCEE
M, C1!%_JN,'KF_,ZS:<O'?N#@1*;W3!(?ET@\L#Z%9K5Z9F6*&E-*0+'F8DS
MTTG*X1Z#F>Q.S[!$PVH*,[7=E9ZNDS -PJQE8K"6,UIUT^9>S#,EBV;L>&AY
M4UW"<#%3JFSG<+=YXP!WE!31RH"3$7!J]>H W(M^J/!?!"MBUUP>?=YL>8_U
MVAYAL3[#6AW*<PHF=I@&KY3>/I35).3K0)E*T]1,O2DEA]ZA7O_JP'/]>,85
M^LL1\#_" )O9_Y$N';6SG?&A3$A[P&N-Z3G#\=8X45\OWG1F/S8E 8)'I5\4
MI/=X_Y><C:<H4ZT;H">KHJU*C3_UY?!L@#_]U/ T.SU+$[7:'.=GBTYW@59C
M9X93(-O1?/ZKVFY!+&K!\P.!QFQ^-?EG#\^"T;'%MRW*9N5MD!L1C0/=<0\%
M*H#.IGWE+8M7GSFU[.>G ,T7\LO^V<.9S,!R!:A!\BHT[4/:$4X"*B -JQ48
MHJSRPX#38.4/[OF_.*&>[XFMP'0*+1%2W3_ ]?;&0>ZHSO\*D,-#7U'3FW+>
MU':M/:\2\!$S+KAR=<QRP$O^X])\1\]Y]<;$4'.L-3&*OR:LT0;9DM*4[@)M
M5^772TIRC?Z2Y/M:L;\J?&>@C)=EWKZI?7@[6G')*GC#K'?1KAZ_V1!=OG&Q
M/*V/ESA2.$\%\]0"U441%:TNAW?AM;T )?K]XO1(<3T5<&H#3B51,XX>>7:"
MZ)Z+5\!9Y;$EM;OV\F,[5*2"A4@8<=9KD2!-WE^9I)HITQ8I=Z3=N*QL,_'0
M635$V:R\"=>[T&>R@3B#<P9OM!I3FL'QK%_11+MZ>9SS,SC5;?X>8]$3^*_K
MO?2R.3TD$UC5 ?L[I1JE5^^_X;)L3DMO^E<2Q=YPEL*H]]]/(3X_I01]\M)]
M*0PTQ DLE(</O@[)&-[P0CZ]>FX\RC"R=%=*(6EQB_,$Q$CB[;=,G/#9\S/:
M&JOR80"Z*PF+ __1FX!V]$!>A9_!Q/$!_6O EZ5]N%=P@+*T2ICE?T?SVG93
MYYE</87$^?/*&<(XKYWQJS.+<-F6)PBS2Q]N:Y3OUDD!&*1ER^9$I&"":8Z=
M:42NLP^?LG!PSZ<CIC=]6J4?/GX-2Y2<[.?TS;;=U60=7YXJS>F+TW%U85Q_
MW_S>MKJVE/^3U)7_6D019Q-#H;_,)JM,%K)EV/;S&HL=ILG#0XICZH&\.<+=
M6QPZPF_!V-TB465K#5AF?EC,7?_QQ_>?C\*77W=?A?X_^X]WW_K"_<-M=T4F
MM9*0BUU)^$9<+YELVYP*;4T/00RL'@?";>"[Q(_ %()/=#9.#'_<H^3P)L(7
MSW?\@0<&5#^&'R8$"P5^2'P'-ARX[N.*&%R>R1''OBIZ^8(7ZP)P]S8-2131
M8 ,A'@4)/,R-,,W\EX]+R18X@KT9Y&48B0)Y&Q"<\,@)64U(T"BROR:TG-C'
M Q8AE;3*AANC88M$-Y:SK!13LAY'(6%DC[PW80)WC2*! *^ZPC\2G["+5$D4
M%$G1Z77P05O;=^?+LJ8"T7_7])Y,_Y/-*[FS[5?-MJZ47 T$2:^O$G=58RI'
MQSZ9>+OVB[V*B*P *?6N,/\?*S1,*;7L"UKQ_@@?YOKSQ^NMREW1&>_1$8]"
MN&KT^DE>"$R>$HF\37%?H!)B>V<6@8J#""B(71BB:D0[K1X'W-:5V(921I'3
MU:YE[E;DBG^O6EJI.[9JEUW=5/B8+G9,5B7#8,/P5G1E:+B''YT6N=\N?G_.
MQLM,TS*>FG0S/](9 =UMO[%=]FZ^RPJPP1YT(O#N"-@')64_^:H"N?ETR/>0
MG8-IFT\KU%PYI0I22N.4XI@Z*J9J:3URBJ M?O_EW=_V()/4<CYU^$C+CXC;
M>,XK:;4%"Z>@*WW"JW1ZIB&J9E.:SW-&X8R2PRC&V1E%[?0,6U1J"W7BC,(9
MY0B,HI^=432L1".)DM2B[";.*>WC%//LG*)C^*PB:DI3>O2TO<;";1#%>(89
M5K#0>)[[*<T:7+'H^_#W('"C?C!V2_.8 6J;+"JU]=F^L$RP5L.L/J.@,LS,
M3D_71+UZ1C>'6>-@5I]*71EF6+]7ED6YMFQ"CK/FX*P^A;0RSK!DKZ2+JLV+
M/)X&*;"H421,PV#H'5:Q=X?Q6HC!=@;/%LI NV36JT]AI0OY@Z[C5_A4EO,L
MB1;+EO6Z3,)&)TQR9)Y0QZV*3)E6F*ZAUR1'9BN069]:7!692J>G6**EU>5P
MYLB\;&36ITA71:8*R#1%2:DY??KT?9TNWO4[;VLR3V:Y/IK[E]]_>??79&!2
MOM.[>H,YX2>)B!,.1C2SRR4O9!Q,,9>75R ]K7%9ML![MFXWOOMYL6IW3)J5
MWIDT6A'2;$IW5XZWHYN,Y\6;3BO>2KSQ7/OPML40/"_>C$Y/%TV5-TQI']ZV
MF'?GQ9O9Z1FB5IL+HB'FW 6HL[\3'Q9T3+59QYUXOA?%(:VMQ<-[FG]:PA8/
M6/!F9>D.Y4(+M0RS>L\B?CK>.-#5>!!2,^AL5#4LJ_*Y" ==XT!7XQE'O:"S
MI4[/%#5+YJ!K'>AJ/+ZH&71RIV>+DM84T+T?GVT?5H+5*YLXX9\$SS&XN[;9
M[MH^&<-(GH'WOF5+=BC;X?FV:.E-L2TYV!KGJZT1;'AD+6HF=YRU#VPU.6IK
M!)N&II-L\%.H]H&M)B]MC6"CS4X-[J(].7"^!"'\Z6,5Z9'C/Q-A'$2\H?7)
M]-<(!@^?#N7 =/7NTL7[W?'\0V+A; /[R5M&Y4(SW&/1.,AM:+''@MPFJDQ
ME<U[I;</4QO*:D/$F(7VD2'Q?/+V06Y#93V=&+,[/:LI.^/[<:M^)M,0%CSM
M7H !!), 1O8?^@5WL#8^?&!Y_?"08VGU-IG,D*1.S] JQP9P7T/C$%5?;$!)
M1,F **5%I3,YHFH_^-^)J%*ZIR$I:$(K/&B_A8"K[]"_3L"I"#A5:DK-TZHN
MTZ-DFQ6PFMYI'FY]BMX\>_,PW[\A85%2193LRD@NM:(78-"_4VC6IS%6AJ9.
MH:G4%LK'H7G9T*Q/]:P,3:/34P":9EWQ]!R:EPW-^I34RM T 9JRJ,MU'?TT
MJ+)&OK+<6"<J+'0P(<(P#"9;&L,>=M9?D]7X3EGU"+HW6^@##LT,B>9E2=7S
MLDJMZ06X--XI.(^@?5< ITTC7JL?OW%PM@*<1]"_#P>GC&=6HFXTOX 8!^>%
M:N 5P"EC^+8NUU74Y>@Z>#8"WL^4W]^XTG$78>!Y_@N)8BR4(CB# 4PJ!D,/
MI(;P-!/B$1'(OQ,OG@D3$H\"ET?0-#M%<2'YO\#:WM&E^T97[GZ^S#G1:H:L
M@#EG->50D .K<>F(!P-+[?2TZCUT.+ :!ZR:4@\/!I8&P&I3CV,.K'K3# \&
M%B85:I6[Y#0D/J;IFBBN#]-#!V,GBKSA#$9-]<XM!P^"$PDC,G:O0$6] B3P
MFG#%B?VA[@.'3:[[$08O7L0R)7!M,4/BNY^Q[6\$5HTPSGQTWDI[)PS04B51
MSBG,]9%GZ30):74?'M0*M*'W1MRK_Y PR,.8V0%1;RFR\JDAR3L<:37*M/U'
M :>6:1:7:9>!M+K=^B>4:7;39%KK':R3J>.%U*D:#(5QX#]?C;T74&1!QR7Q
M6:-G+HSKZM%92QN/\_7[/OP*J_<5%^^&KET.?REXI&ML.KF*"W#NAM@.I4=O
M0B+A@;P*/X.)XP.>UJ D2PWVF^X"4F$!KLBU"7".M.8)K;I<J>6$EL*%5MN$
M5EVNTWJ$EMHTH=5V9^H]H"$D$>B</M,YX<\)(.+IL$YP[]/,J]U)6OS @JW>
M/']BDZ.T3D^U-[/*N*/@DA%47^AT 03AX59."RV.H$M&4'WQS0409'1ZEKEY
M/,H1=,D(JB\(N0""S$[/5AN H-8[(3-U$.N@!?&(A(+' C\_8+G>CZ+@$^J?
M?'+\/X7!R F?"7=--C["DRWJC>]^QR5EYP$[N,WJ]&2U<B<K;NLW#E"U17:6
M!!06MN2])-J'I]H".LOA297 J-6Y@&H?H&H+Y"P)*,QADYH"J/;[')<TRITE
M(X0G&L"0Z:"Q\W9.KV1KLDVK^BO7*F+O#%!9C:G.O:1B.)2*G=%,T<AI*E':
M/CQ_9C3'ZJG#0D^ 4-I.3:]>=9JCM*$HK>I];9A$U0"OFJ@JFS6&N42]>*P>
M/RCU! C5:=$)I:YVZ[SP6T5E'E1S@3#[BKN#SU;-;9//@+?NAD,RB+\/<W\O
MS7BT@9N1LS-PY\NEX^L0Y7D_OC8A9.8?!W, 73J #LF4JEU T=9L<O62L!Q?
MC</7(;IH[?BR<0/4&M-^I>W.X@<2KX8@U%]C>(>!6-!N8-2Y5F']W"!Y&A-F
M.U0P&1NU!G\YT)RJ1I;F2JTC^<\+F,T1L,/W(<BTFS@.O:<D=H"JC\%/,L7^
M/O[S'=P0S\K*-$V"/=,6E3KBA.M8^C-Y@SBS<V8_L@UU/A:7J=UNUMQ?AK,Y
M9_-VL/F13G#.Q_!X*FZ(FK99H9/OZ9S9WS>SU^IV.!^+8Z%44=(JETH],YM3
M%\;?*4W@OZ[WTJ,32LE("9CW#5R836GI7?]*HM@;SE)0]?[[*<0WI(2@SUZZ
M+P6%AJB9!I&'#[X.R1C>\$(^O7IN/,H0LW172B!I<8OS!.1(XNVW3)SPV?,S
MTAJKHF) ,%SQI(GB"@Y0EE<)L_POCAUAYAF2-7RRAT/#="Q-TA5;(:IA:Y)I
M&,Z #(;_I\-&D]XTFM?6GSK/Y.HI),Z?5\X0)G?MC%^=682KO4P5($DZ(ENC
MK+M./\ MPF)!>8I!H,W8F4;D.OOPR?6BZ=B977L^G2:]Z=,JT?'Q:Q"D:\!^
M3M]LVUU-UO'EJ4LM?7$ZKBZ,Z^^;W]M6UY;R?Y*Z\E^+N.G8Q'#36.:NU$>8
M_AJRM=OV\QIG'G:.# \I#L0'\N8(=V]QZ B_!6-WBU"6K34TFKDR^8^[_N./
M[S\?A2^_[KX*_7_V'^^^]87[A]ONBAQK)2$7&YOPC;A>,MFVOQ5SF08QR(<X
M$&X#W\43>1<_T=DX6*F?1D=[$^&+YSO^P'/&0C^&'VAU6^%#XCN)Z\%U'U=D
MY_),CCCV57G-%[R8[7+W-@U)A OM^4(\"A)XF!MAGMXO'Y>2+7 $^SG(RS 2
M!?(V(#CAD1,2FNL'FDKVUP0;.D0?#UB$5-(J*^K!DN[0E$6B&\M95HHI9H^C
MD#"R1]Z;,(&[1I% @%==X1^)3]A%JB0*BJ3H]#KXH*UMUO-E6=.<Z+],'WQ(
M)C#*P;I"NZ[ ?@U@0E1H/(:.2[*DB9]D0+P7?':$2NTXB)*0/,)S?AL'@S\7
M6JC6$0CHIE/4P\*$'$[?/IEXN_:1=:UF8Q^A6HW1%>;_NV'=22(AG,_E.D^@
MG4#9$H35]2NU0OW!B+C)F'P?9C.BRT47#I8K%>3^\V+)<M9)SUNG-045F4QG
M_9!.JG<!=W0EM@&44;P,J:M*ZD[%J_CWJJ65NF/;H&2S:\B-')11247=,!L5
M71D:[BX1S"R;,F9_*M:/8_;GF\6'S+5TVZB+HQ5N1$*V!W&2%2'99Y"^DR=0
MI%197-VQBZA0EQZH<9M$\&*8?8Q*Q-*.>_*@C);[9EOH8U5VI/TRG315>Q8*
M3FEGJ8%Q@;9<5P[6!9QM<#YHPKS*\(%Z CXP:2ZB7%?F#,^/V;W\_P,&+4YB
M:4/D"3(GWT2R55CR:3R0^#8)0U A2Q2HU:RF%:CE^#F%\"V!GP(B&$/()=%4
MF](\M>VF"75G'M,B*9-'W&(.VB*!,R_FNE>Y+-_H$L8PFDKEU)[FJ/ <.+M$
M[W;@;&)#QA)SE07J:93:S&L. R7;@73^J]JNFW].TH;V-.2'N,+4@8&12/C@
M!S$19&TC4I*K6O7$U,DE.?YP90O#DV0P>"6><-P^%.VIB% CBFBHI6WR$H&G
M@<'->!R\.OZ X#K1PB(#E,^#D+A>+& >*%?BCY7<L$>+GR_-ER#\'"1/\3 9
M;[HEYWRVR4I:IZ<;-526XNI[8R"S9S>O#!F]TU/-&LH[<F?UT0(D=J@K^^[9
MF7>P,_6@S9DX]1.GN<*FSNUI0ZY4T/JPV)4AZI94D]I7WV*>R?+@K,Q9^61N
MOUI9V016MD0SIY'9);+REI2Y143QCN#>Y=>L9LO5@9."X=#W/D;(*:+@"*/-
M$W+AU:$QVTA";(!.'7.8S@ &O1#!TF:?;X,)C'OVMTCPLLY%GB_<)I.)YT?"
M'_ W9E@*]_Z@2Q-BTA_HWQ\ZZ9^=CUWA$1XV'PA[>^S J%WA:3:_#6U11Z =
M,N']NT.X93WW /$1;E[!+A!P<.TFX2O,-2+^ K!6IQ?3/($9<<)H?7EQ-I$3
M>]%P)@ !P$2.60+!JP.+X\<S(7B"%4[+Z --,.,CBC*ZS6F[Z[ZN\,M/,*DD
M30D17H'"<.O4 23#^Y<60'!B^B?!ME'L%4<FCYV2YPK)LTD=>$X7EEGXYH2#
M$8UA%5?&BQ'LS*?PEW(NIUTM=&H])3;PM$L656/3<<F<UADJ,^=UNB(Y["1B
M!2W6+F/!)\Y@$";$[:ZEE527(MMR;@NFD^KS=-)2*1+W_@L0.0AGNW)5#'E7
M#D0]<K&F-!9S*8TEFYM'HN.GK^0/IY[LE?DBI3SQF)^J8B@\586GJO!4%9ZJ
MPE-5>*I*_;/_D8!2Z$3I@3_/3^%Q^34$MLUUFSFZ?@\"MW20FT%[!:E:787Z
M&G!*QOFA;?Q0)'JG+G[ XV)1,RXD7^7\07L\M _1_,7SO0C,3N$90<?#^,ZQ
M+<XE0+88J0#8Y''LYB3S +VVX6//-K$-'R4W"-J12&E,?.=[W2 NS :LX& Y
M5KG9G:>&;=>2ZZ),.R1GT9WU@90_5Z()X)9><S/:J@O74-N4,RQGV#I5G4,8
MUNKT#!'^<_D,>_%A*Y^3$ _1\9P]WEW$<7X@L1IW, ^\&(P<_YE@9,9KZ,4$
M,/#JTZ*M/HGA*ICG?^BQYHLS3FBXBS.=AL$;8"0FXUFYJ(4]:3)S</Z!(_D,
M \E#(2:M:YN!D)0"Y6(H:AB-28,C-D<C NDB3!;Q7I!*'PHNDB9<E9O#GDZ'
MQ>8@=WJJM)FR6IZB>YO.%!F- C:XM.EE6Z7HQZ:%BQCR8>$B=_].O'CVC<2C
MP$7Z1#$M?[PK>,14&=UI:?^;./WN*C>DY'QQ(]92W,C7P'^^HN%JWF**EQA!
MLF6U<M9(RUDC+7^->#P)CR?A\20\.(+'D_!XDHJE3T%#\D)'N'5\QW6$KS]X
M1 D_0=\72+ZGJQ3J;A@-OZ3NE'4<F'JGIVBBTIBS<\X)G!-R.,$Z/B=@\5]=
MU.RZ6J7Q1/)B.V+_E;C$%VY^XQ$81V(>^_C,8](*2I:^6;.#!VA<.'P4Z?CP
ML6@>FZ+P (U3!FB<?X \SF11>Y90!^:5PS+::9\V9"C"JU@=3;+M.6;:*]EV
MU@$W[=KJ@#?'MN+02:&S)_HF%SH;$+'PB#*G^SHW.!KFW^;E;GBYFR8$]=6@
M:UL84F"*(,%:4>6&<S#GX$9Q\)XHOSHX6 $.-D3+J!R>VP@.?D<!?ZM=FS>C
M_IY]>"T8?G&4-MH.AD+J)OU;E)8TQN^J1?9%0"WXM!D"-@@FY"N\Y$L83+:$
MTY3&J@I8%0UK$ZHU! 6>="):IV>*NKD93Y@7*[65U4X 1Z%D\%9=[W4BP:$8
M9:6G%N%DPL*E@=71GF:L#!A=%V%"%^9L,9DGA9".66BRM*EXU1#.>=*)&-LF
MLCL2M"UB?$O<-JY0Z#TE"'3<$Y$BSE@8.%,OAO]6EMNK*_O#F;$ Q^!F ,L:
MDKH6U\0V!K*54U*N[C#NHTW!ZO0LT3(WZV-@:;L@VU(;$@A^-"K8G9XMVE(=
M\?A[HL>/-05;VC:%LX6<-_(QJ1S3\!G3(**2YYK6? 3R+&*(_[H:U)SJ^]+B
M%N<)5'N07UMO68U=-O+B#8L+[O)1X_F"6U;65G_IWU&8#63J/).KIY X?UXY
M0QCGM3-^=6816B#+$X39I0^W-6H=KI/BU+'?MMW59+ULZ+=M=6TI_Z>B <UL
M8NB=6#;Z5DW&D"W#MI_7#,;#_,7PD.*8>B!OCG#W%H>.L"M/PMJ7CD"7^X^[
M_N./[S\?A2^_[KX*_7_V'^^^]87[A]MNJ=#5BR3D4M+)-^)ZR:2B"^4AB G-
M7;L-8$?UL; :?*+SH95I[U%V>!/AB^<[_L #?:D?PP]TVQ ^)+Z3@$)%W(\K
M@G!Y+D<=_:KXY8M>M$',W=L4]NF('F:#KAPD\#B7NC!^^;B<;)$CP46I&48B
M+4&-4Z;>#U13IB3,_F(5IC\>L RIO%4V?%<-6Z8#L\)J62OFFWHLX\"BUZU$
M\K.==[XP:UZ]+*DKS;ZB!<07F7-7\JZ<JYI,Q-(9=/DJQ]X,.N'#/,7LX_4J
M>;810#L) :K-&TS=)UKQW@&FCH%?QY[SY(T][(B)*OD+@1E36& _-C]U5\[M
M+<K&6",?FSU%UY74XLO(P).[LK5;#3M+LIMLEGO4B09EG3H#K^S9VV$)4CS[
MKE9*9<X83JN227?5$NYJIES;*<\30PO3J6(F:$/"T/:K4"SMA;6U2#6HZZ,E
MO5SB_34%>M,0!+/!$'"B$562!_@!#T)?G#%:#>\S)[@@U2XM$;+@M,J%'>^)
M+D)DX?_?+3#U$TS2T,,V5OC#C>^N?K%T9>G3&1E/9Z2<$DL7&][.&:9M#+/G
M%/VT#*-T>K(DJM7K$#<KXK_I^VW6)'2IW1W/-3[+_E1GNU9;I0G[4O6BESM0
MS7..FRBU:X61!C"212DGR*21N<=M,8*6&E;R_-:S".,J!8=MG;6]ERMG$35'
M^>>P*21\*\'&P"AZ36Y9C9VFR]H?:4/N[%"6:[]G$;CI,MRQ54CU%3 P'P)_
M<*#R8F)ZC6K6E0G&5>#&8&E?^'_]6,(B/**6$S5_F7IPZ5.)FE2#"MT^+ABN
M^PQ_>MIUJ(EF=WJZ*MK5$UY++=$%J*'O$VO[O ,5L&9*4J>G2:)LUW6J<>1.
M*>^PNM=EG??_"(,IC&0F"C!K//?'X,A_)]X4XT2Y(GXF19RMR0]<$5":[K+U
M*&_2FI(, @/T)HF7OFP=C/;JX#7"2*'[CBVU1?UNN%B^]V/'?_8PAIQ%8G$G
M])F<T-DZ,+4-6.?N;3!.D![8Z_?5&X]+\Y**7D:E>K=H[IMN&IKV^J:/@"9:
M^46R>)G&D^ A6R:N&I]%'B^X9),1]$Y/MYM2HIM#XE1"=1<D#(!$]=XQ7&4M
MELLSA*<05XB=-ZZTGE-(9BOQZ+PQ/>/W,(BB//[ OA@Y=;*X'GKA -DC,K<!
MI&CQ>%.RFE8\ON5JYV. -=HJ2-4=>L:^>RJ<XC2)A(?6#MXW[Y:(C$(GI*6-
M4VRY+JFB4MT\+;4HS2[5S3FIU9Q4Z/RW+"?)4J=G6:*IU>6 /]O![Z7;.5F&
M]%)MF</2I&L*"%I:R+7:Z,>--:IY:.\DUG6>[#5U9L?(]*KL*&H2L4IO-&W<
M3@KFK/U@>+KQ7?@F3(C[=2&?#@PVDN5.3U%$PVI*[A'G#\X?AR;C'8,_%)9E
MI-1EW#1$\VKZ'III8-,@I/@(AL(T#%Z\"/[@/N?S;$/]$2P&=@[Z+0C#X!6H
M4-[$43'"WU+J"J/F_NC&@&>/C*X#/)@G+<I*Y6S[9OFCFRZ*66_@P:9)S.,C
MSB*&Z7K4H-GHV&7%:DS1 0Z@4XGBN@!$>S#9U8MO-4LS;JH89D1=_G<>C>'1
M%ELT**.J>.:*3EV1&:SOV:/SML1I>5R$\1EV4R([.4Q.'9^1#Y/"41IRZZ(T
MCE(*MH!"\#X36?<(LQJT!!N,-EO4I;I"-!L='< !5U$L5@><(F%%;U$WZ@H3
MY^G3=:=/7Y;BO>BNPYW1#=J9TB[VG\D3)K[>LA:W7XD3D>]/,$W:V2A/X58P
M6UKG#NC6 6;?SG(P8!2L_=*4"/J6!T$S9_-X+G*YN_G<@G;=6[A<WFN35[ B
M<O7"-=REW#20E'0I[P:)ABE[32E6\CZ4\/,/D-L2\QR?(SKI2X3KOH_TA'+S
M;HFT+N[5*^U=T3L]51(5K;+XOH1"B)R;.#>5<5F6YB:#=GXP+J"L:,OMS@<2
MGS?U-FT%O9Y#\^XD3)U4:8G\*92V>T#!/\7L]$Q5E-2ZVA?5L6@-S1GA7,JY
MM(:4X$.XU.KT#%.4S)K/,T_.I52#^'N,&3KP7]=[Z?TW_),-=^*$SYY/WZNO
M<LB_DBCVAC-8#WKO?'YLH#"WL3.-R'7VX5/F4O!\NJ3TID_IX]-)XQO6QDE?
MR'[^].JY\0A!T)48$%*])WUS^G,7?OK[YO>JU94L.?<GJ5OV>]722MVQ;5"R
MVM5EFP_J@@>E&#L?55H_K[G)>^[]=O'[<[;&4S6)[^K%?'>CD! !'S>*A#O?
M):[PC\0G@BJ)!]D,[XZ ?>^M /FJ KD&'>LP*I2(XCX:7JK1J6%X421%YY0J
M2"F-4XICZJB8:LD)8U.OXN3E!\N'^RI^DA?B)X>5&JIP -92]U;>[%KBIM)W
MNZE2''T)@\DMW(G/_,.+1[=)!',CX;R5 ;JSX/^PO&QIAQ86C%1$2:FKO]D%
M'!1S/CG_M,KQB7%V/E&Q#Z HZ75%6EP F[R[<Y1W&4]AGI^UL.J=)5HRCV+B
MFU,CIE6.@ZSS<Y#2K,VIY>%)MT$48]IA6,',XUD.58TC7(7OPY2[2G,,EKY3
M15NK'.O'LV.:AIL]QD(UW&B=GMJ@KJP<-J=2A*O!)@W45WDR7NMPLT?]JX8;
MHUGBIN5^^]^Q*Q=6DQAZ\3DK2;2E&,V'B@I?!(.'3QL-*'&9?M!5*LU0)BV3
MF%/R^&.KO SO$6VU:HDK&-N$D04PTNLJ?<R1U# DE91;&YKC$>06'M.)FKRI
M"'"Y=>EHJU7=W"VW-.DRY%:NGJG(K?$@?I\2> 8,5"!O4^)'AW8T*V*>'7)_
MG7U-]*[>W(7X22+BA(.1X/@N\-4+&0?3"?'/JOVW67KM#7AARW'CNY\7BW''
M>*3LGJG)M+V)U90.%1Q&IXL'J1-&V'1*E)7*/A@.HZ;!:&_L0YTP4FF'C^KE
MV#B,F@:CO0$ =<)(:Y8TJK/M4J,UQ=^)#SK[F"J*CCOQ?"^*48=_X>?_Y]$5
MTP7!_I(KRW$H8^G8S\RP*Y>6Y2=T30/2/E?O/B!M8L7H]$RYKA(0'"F-0<H>
MA;!ND6-V>KJH58][Y4!J&I#V>6G+BQRK22+GW?@'^[ ,$=7Y)D[X)T&7+7<-
MGD7=ZY/Q&*.D??=;MA([N,7N]%2E*5T".$A.I<J5 HDN=7K5"Y]SC#0-(WN4
MN'(8D0$C,C]!:!U(]BAHY4"B-$B0O!N'W)<@A#]]@;P-1H[_3(1GQ_.Y+^Y4
ML9FK_)(N!NL2.)@]AC R]MS?856^!E'T&P'CF-#DMDT&4CL]2]LT;HK'-G$+
MN&D"=H^F5@HPA1OPZEIM#7@YHAHG@_8H=A5ED XR:%/1XR*H28"I5<<[D@@R
MFB:"WHVS[C.9AK#>M'<D.Z>=8(_8_] ON-ON+&Z[Y36Y65H.='T/!B'!S[0.
M^R8CF2"0#1XNTSK$[-$,*R#&ZO24ZIW&.6*:AI@]BE]AQ)0[GM5ISHW.(_;:
M!Z@]FN'A(LB0FB2"JOH":\LG*6F4O,_,K@+U;B) 8.J'CLJ*,T/& &1;-NOM
M7-/,#E(<;354R:F$-@7#*66SKH(G'&T7C;8"Q74JH4VE58PUI:Y0.@ZWBX9;
M@9H\E>"F78IP:WG!'G32"L,PF @!RZ@._-J;N)>QF=K";4<JW#-/>[_W!\&$
MX.J59CV]TS-$2U-Y(8SWCKH-#?:(J,/6X*(D;T:4<M2],]05+?93!^I,6J36
MTC;U# Z[=P:[#8WVB+"S+D#8M;S$^#UVGR-1+'AT&47!)[3D^)/C_RD,1D[X
M3 Y3='G82%4_;+8TC,%2$_(A\(.,\[:<#-C 54W)W^)H.94?M1A:"D<7F5+3
MHHLXE$[E)#U0\)@RYL)QM+0-+7M\G'4+'J5I@N<]N#:?: !JJ@0*L?-VH-;'
M;:]3N#<7)E?6[,GS$Z#*][EOF@44L^L><37OWN+0 :IZOA/.[F,RB8!%\?UA
M0!/0,BXN:\.9*G63YF0N-LB&X^AMDINT2>C5+L #P=';)'=KD]"K,[>MQ(7O
MNX=O4;=MD^!["6==K7?_9@J_\"$D@P"&-?N8U8KG?M]&Z/G A*E5_1OQ27Z_
M!=/L],PJC,3=+DUSN^SU]Q;&AM7I:0WQI7!\G$MC+804&XSY3:AP*=(DE-3L
MO"V*#4MJCA1IN4?V@<3"&#3TNCVP!;5H-NUK%1;&#9*G,6&:= 7#JDG$_<N!
MMD4UJC16FAQ)<P4('QX79&$M/-',:9E^J&%8:?'.Y/3@W,JY]40>^6K<JC W
M#N=6SJV<6T]@SU7C5I6>&9A:%3./LRMGUW?/KD5/7*JQJW;QFRLUUO\>._ J
M^*_KO?3H7 ;LZ(F>.>5] Q=F4TI72<.*<-,@\O""ZY",:2>+3Z^>&X\RW\C2
M7>E$I<4MSA-,*XFWWS)QPF?/STADK'+N@. Y5W%8/GH3$@D/Y%7X&4P<'[!9
M&I8*#E!6YRO-B+?T[RC,!C)UGLG54TB</Z^<(8SSVAF_.K,(%V!Y@C"[].&V
M1BOLK9,"H(0KM2 BA05,<^Q,(W*=??CD>M%T[,RN/9^.F-[T:95^^/@U5%!R
MLI_3-]MV5Y-U?'GJSTE?G(ZK"^/Z^^;WMM6UI?R?I*[\UR(^(C8Q%,?+@%_-
MDP[9,FS[>8U9#COY@X<4Q]0#>7,$>AXK_!:,W6WRSEH#EIDK[_ZXZS_^^/[S
M4?CRZ^ZKT/]G__'N6U^X?[CMKHB65A)RL6<(WXCK)9,MI+0IDQ1PV04Q,'L<
M"+>![Z(CU<5/=#Y.#'_0,W)O(GSQ?,<?>,Y8Z,?P _9GC(0/B>\DK@?7??SO
MIQ"QR\B_/)>CCG[EK7S1BY+MP]W;-"01+K;G"_$H2.!Q;H3I4[]\7$ZVR!%L
MM" UPTC$$O($ISQR0D(+ATY)F/TU@3T[CCX>L RIO%56]NVE3;TIRT2WES.M
M%3NH>!R%A!$^\MZ$"=PUB@0"'.L*_TA\PBY2)5%0)$6GU\$';6W_G2_,FE)#
M_]W4)I" :[5L_Y5$L3><I<A=8[_Y8U %] S)&C[9PZ%A.I8FZ8JM$-6P-<DT
M#&= !L/_0_=+>A/3$!^2"=!HL*ZOKJNE/T(,T(]G/\:.'V.)DG\G'NT7^]F+
M!N,@2D+R"+?_-@X&?R[44;TC$%!2I_"@.$S(X8O:)Q-OUQ:VKAMM;&%4-[*[
MPOQ_V81$88I3HJM'LDE=Y\G46I6W_ $*PL:Z;E_T>M8O9]6,_%4[K:8'?-B5
MV'931M73]:YF6CM5O>+?JY96ZHYM@Y*5KFGQ014<E+W[4:5/<Q5=&1KNKCV(
MV6IE' OIOE;.L5!N\SGH.'=MKJ4+97):M9A6-X-!,DG&:&%P@A6,K&#X^BT(
M_BRE:1\P][*NWJ/.'-5;(=-L.5B*D R+]W%*E>V'P2E6A&+_ZXP34D8 95HX
M& AD.V7:=57+P_QN@\DT 5 NK%3FF0B&\:L3'I9]P4OR[SVWLW='Q&ZUJW\/
M#SF_,_'\SC8WS^]X:X=VXVA)-U_>'N'SF&0M'I8Z/FR%76G$T:)JIMV4-K$<
M<6>77/GE>BSL.F-6;M+0D XB#=_KOR0A+&V2GOH,@97A,R^L=QQ&4:53;O&V
MA-V;)'FS4#1/L6LWCNK;XC=!A;74+)E#ZIU!JN0>;BN=GM&8FGLMM]>_.8,1
M?!G.5H^6N9U^'$Z13[J)8UB\+-I:95[B9M.% >E<AKJM=7J6J"M-L< XXLXN
MN@[H'6OKH"B*FMR63J -UP&^$B<BHV#L"MYD&@8O+(*7V_''X2/EI"J @6U+
M5:FRJYX;71>&H[-I "8B3K(XXMX;XLJ:^7BFH]35!)*;^<<*0#Q6PO'.!,UW
MGG9<CC:M$"^G58NPG9 D*FI==FI]JWF)M0,X*W-6+L[*9]),+0G/-'71M"L?
M:G*FYTS/F;Z>_;N\>]"29#0QM9QJ/Y?(QSE9MSL3*GF68SL3"ALY*)[ER#/W
M.*UXEN/Y"8;UH]]=@N-G,B"3)Q(*JBRN5NW@6.%)CCS)D2<Y-O.JEI^F\"3'
MLYP_JB<\(K D6@'<UIH2@\1Q="H<G<T_K2+B=),C[KTAKESDA"5IG9YJ5HZ<
MX,&1/,FQ:8RB5=OB-UE%[_0L@Z><O3>@'"^+T9(,D+Y2Y4H$'%(7!JFRF[39
MZ>DZSV+D68SMXY2-AGE'-<2M3L\6M9P6KMPL:C>.SF:(VYV>*6J6Q1'WSA!7
M9Y223$NH-*=*6LOM=)[$>$H^VFC">4P-0*;Q?E)U#8#;7!>&HW-I +*"">A6
M]<(9''$7AKB25KZ,9S9*4V#2<BN?)S'R)(AFBY>31BC(&M8Z%56U'7D0G)4Y
M*U\.*Y]-,]6!Z351D3G3<Z;G3-^0_?L0]R >(XMR]0(HC>#C+?W0%YT?-__>
ME^18L%4H5AP\I-4D"/  >]/^<&8X:I37@T&8$/>KYSQY8R_V2+2C:Z@EF\WJ
M&BI+2VU#L\D)4S8[>BSJL/D)X\4$KU>I7HJ _<&(N,F8?!\6(>4C_I)#12N/
MBAG]5IO-=BXD[=60NJJD-BV9T^P:<B,'9? ,4YXUR1O^G2>%\%(]AD5G_Q@Z
M+L&=;V4[/+4+L1E&1%&:E;8BSFP'%)U7O26,EC4>BK+;) P/,>AMK)@MVTT)
MY^?LP-GA &=87>R@2+1G@6HWI8+\I8;-E"A$0:U"V!I#,*!XP,PY]I.[R70<
MS CY2:A'><EN/I2-L-62J/#,E]8A:8\HKA])- ]:URMGI;[S&(?"%HOS1HYF
MJ%Q@&/!YM'O<$N_]03 A=#T.Y1V5AI')O/]2VQ"T7R&N"4$:0U!=)6NY-KS/
M6S:$QX Z')(7XB>'"6"NQ%04P+=P,3[F#R\>W281S(>$F28SFW/2)K-@VRBU
M*1TE.%I.)&P/18O1Z>EJ4QH<MZ2(V/N8QL4;&9\3(L0!;'+42 1K(T0+4?C@
M!S$19.TCMSN.(LAD>8\H^QZ/2/@ BY"Y4@]5&TTTVB6ILON'&QZ-@]">,A6U
M0<C"]%6YM@XY?(,\;&>Y, .J0C3+#D5XWST[@Q^W1SZV]B2R3K*T0VZ6.]#/
M#6$\5)#:-$U'M^M*7ZYC5<]DT'(^YGQ\RDB$.OE8Q<@$6]34ND["SL7'56+U
M"\#BT9N *?E 7H6?P<3Q 1NE\S9H0+MP:$: C(W>#HEH_TJBB)#O4P*0!@+3
MBB+19LRZ*C-0>C[@ZB9.O\/'-2H?0%[*!YC/21C320D4(E?!\"J)B.# M..(
MY@C0GW,S!(ZV^OG#WUS]W<DBZ<B6N.!?211[P]E)$X[HT!]'1, *\8X_$T9.
M)-!X8.(*GA\'PHL3>D$2"8#*JX'C#\AX3',:@M45$ISGD+ 2-L(T!(D4PA!1
M8 D>? .$388@>Y(0;X!/Z6+1)0R&0V] HJZP-(Z_1=G"CYP7DKX"1C6!T;U-
M/?J8)Q*_$N)CC+!)'Z1(JM05ON$TTIL]?S!.7!BL#_\?"I,@Q(&C"(R8.\DG
MKROO!8E&<*XQ8@R8D%T"LAL>16?B$AR%Y],D21BZ -;KTO!@*Q@#4])OY[<Z
M\%87B>/B2Y_P%R<*?"#CC+X&:0ULQ)XR""9 Q0$E)1L:$"!TGO&NB>/Y"XK3
M]WGP^.DT#-Z Y#&!!^Z4(,J&\;TB._Z@J  9P=[X,WLA_?$17B>O[$& M\&U
MFX2O(/DCXB_DC=+I#8,D%&;$":-UV4R7"NDS#4F$G0A>L$%%1LH@B:,8KL!I
MKD,LX_*9\.HL5@*)-YV.9WB=([RF4YA3#>Q9NL,*\"CZEJV;-^RH3R3<J8=O
M.B]VT>]S^NJ?\.8?)!PLN_7QN1FYU$[/[F[Z]?\J/,$S@3]\Q'%($>&,!=AG
MP^ 59XLSHLL_AFT3>1(P2IS!2 #I3_'9K9 M12>$?6FV)$)A]=%"B5 F5:J:
M(N> O:8@#5!, 18REHMBRJ2 JF$P'@>OZWEF6U.\-O,H+B7I2[6[EJK7E%^E
MJ_DO.:"#G\T'==&#TG8_JFIZ7-7\I]S[[3;E3SV.0!$#5<>/1ZC*N;"#9%EH
M1TM :Q4!^]Y; ?(U$LBM2@3D*9,E*,4;+7),'1=3+3G/;.I5EQK!4["HS7)M
M*;2\<OQY[S/)^5B5DMI7ZVA/',D7ST?W)/5;_,17?!_^BL@-0FL9?'D')7JG
M9[>HB1T'?KN OZ<'0 7@&YV>W*:N$1SY[4*^?#3DFXA\+O,Y\AN*_#U5WRL@
MW^KT5(6GYYUDQ>_I27IT6%^W=N59G=<@R!;B[FU*_(CD\87=Z57N?,0S\9J%
MD!*:\WZ$:%*GI_#Z)"V#2 D5LP!$9"QVSB'2+HB4T,4*0$3I]+2F0(3[]'ER
M\>5>U?(CD\< P_T6(6J7TT>JY=Z&N@C3BLUQCQ$V#R/-VPI5[ )05\IW3:O2
M4/\=9T;.C)7MW9W,J&',A\V9D3,C9\93>!9V,B,V3;,Y,W)FY,QX$A_.3F;$
MQF=&765ESLB,A^519S/:Z&U5(+LU72X-0TZG0>0AW:YI$2_OA2SRE_ZZFCR6
MTD9:W.(\ 1F2>/LMJWE3QI;$K*.E!.?GF\G:*F&6_QV%V4"FSC.Y>@J)\^>5
M,X1Q7COC5V<6X8(M3Q!FES[<UF@([SHI3IUW9MM=3=;+IIW95M>6JJ4(L8FA
M:%YFD-4:!2%;AFT_KS'788?*\)#BF'H@;XYP]Q:'CK K5=[:EVM.E_N/N_[C
MC^\_'X4OO^Z^"OU_]A_OOO6%^X?;;JD4E8LDY%+=@6_$]9))Q3AW6GD,\[)O
M ]]%G[V+G^A\:*E!ZM'W)@+S\GO.6.C'\ /+=/^0^$[B>G#=QQ5!N#R7HXY^
M5?SR12](M@]W;YA]'M$B!T(\"A)XG$M3@G_YN)QLD2/8FT%JAI$HD+<!P2F/
M:)ZP[PI3$F9_36@%EX\'+$,J;Y6-]J8-6Z8#"X/4LE9,S6)9C4CX*"\]CUV4
M-=I+JT$HZ_OO?&'6E* L.SXMDL*2%.;%4\"0VZ\(E2-,V8HI6_2+>BJF"!_F
MQ6$^;N:];]?S*I>JF=<\_N9@99!XMJ74@);;N39G.9I5:F#"9H44GI<:6":[
M$V'5CSSTOK-2!!9H?M;NKJIGR&4WNM:>KK%G/-YM^]'G*"MW X!%[CDX;Y.'
M3+^;D.D]%3-W[D _G!G5Z']FH/L^_.*A)^B?Q GS?$(81:U6CA?E4=0%4Y$-
M'D'=5);YG) '>.+C*QF_D&]4,<]C&+O3TZLG69XF[NW2MT^LB,<[(C2887!7
M>7P-<OA$ESH]0VI*2F;[-Q:+;RQ-YQ/T_.1QB@P[BMZ4?(SV[R@VWU$:SBE?
M@B3/5M$QX\"ZD+8HE[ZE/(Y(2.@Y+M]83L@NK],PWLTKC\%OY(?CN3>X-KNX
M105I9U](E[U+WU98B@,,/ZV43&"63C02ANCX/N=^LS4(IU#86-NXJ^QF5+93
MA8ZQQZ)E5NZ$6G;U^ :V 1=<XVO!FTR3F+4 X 4,&LENOY:$YMW; "Z]H7$(
M>>R%]<TD[GL[R?K_6.]JL*V+@4?X#M<XEMO";*4W-"RL)MI&706F^(96=4,;
ML!Y:PA2+(P4^W\^:PUS;.Y[K9J=G7$K'\TO?N+X&_O,5[2ETPAWK>-D2A;:Q
M)M'_A/D]&[1YQ]+G(? 'A_57U&G#:555SIX95)L6L#\Y:#E$=ELCNY5\FVT9
M0D5;(QH'MD8$:88=RSZ3IW@SHE2W-SLBZG;C.B(J2_&]"_'LPI2N*X3B]@<C
MXB9C\GV(Q+GW(Y@K]=QLTLF0"D;>LD#HBX@V58RNKI:+*MT1(ZK;-86;ZEW=
M*!<#N_519M>0U9K":=4],;"E!K5[?E4[ZC2_IP8*)&$<P$O3%IBS.GJ1-'_>
M67R_@"E5[V/*62$XVJ3Q?4PY:Y-U>+#VNVNR\YD,"#8=%519%,IVW&FLP5ET
M]G>?;^NP)VM9YJ-.M$^F,5MG6:?K?%@X<\7E+:"LGY(HO[K]KO C]"9$P :Y
MPG2<1&6;\\JJN6ST:>NJ[JJ"F\ED?-W=<$@&6(4@;<SK/"]BS)9Z\QIRIZ=T
M<VJ4_34GM?!B<DJ*+M&E)944SIHN4\5G%6*;?@7$V(WOWCI3+W;&U+GP_0GF
M1TWDJ*Q3P<!@+=&RZG(J7$ !'\X339A7.9ZP3LH3:J=GB);*0QA/ P5&U>5_
M;T]T>G:"T[<*U< NEV'1W[DSTF3)6[J=;V\/\Y,;6J>GBO4%H)R_6AV'8I6]
MXZQ8U"\%BVTW_C<WF<4)1Y5MIDAXU/M)6&GN9I+'G$:G9YM-T?(X8!HF\DO+
M>A.CRNW:SN=YLQ7>^H1/ED^V40/DD^63Y9/=/UFC/>ZYC2@2CT2BX),8LTTP
M.$SPHBC!EG0"MHTZ+&9WAXNCH$V<'\?8^&K\]9\#U$F6=A@$^RS(FNT JZ8C
MM1H7\DS>2<ZZG'6/;,O7S+MV34=_9^;= M'U.VLMY\?NG*.\L:P 8K[[PCQT
M359I2),L"O$(-(Z0N%X\CV^E%:=AEE<A>0G&+YA31#V\\]]?O7@DW'V^%5Y)
MB#5?AZR9+LT\#P30Z(2_E(*G)BW#\_[AR^Z0H"_.@&1YT^60:6(W<$D$$F]
MDTT1-321S>_?B1/"=^.9, T]?^!-G3$E3)9=+TS3V@E= 2C[S9G-XP$946^#
M":PO$'/"*I[C=U0!=)Y#0EL1+.@(5)O"ZV$-\"I:]UN(0UCK(:ND.P"(.IX/
M(\$TKW@F"J \^[%(!T3^G7A3^KPI+)@7)!&.>4S<9WQKL'@Q79U;$DV]T!&Q
M5&_P G."QW])R%CHSZ*83(0^]FQ!KA?N_4&7UKL6@,7" -8:WN?B5/Z Z:.[
M?_G&2+AU?,=U<FZCHYP$KC?T4CI$9)!5V<X9:%=XG \Y8M?"!4^SM'0_NR-B
M30#F=/Y;1 D!Z)PO$%R0SK9;GC$O@*$?1R MGT=!PF##T@ 78(&/\'5$!,:>
MR,8.O-1_9GTP5E$*A Z1?B%;B@D!!&8/&LZ[:&2"8?'-('@A\!FYX&9+:?2-
M%\$C!_#7V*/F#F4"9[ST**PM ZC!N_*'OK:<A?L?;:\R7S7AR3XLX6F1U?-M
M7G?^^W E#2J_NKZYF?6TI14"S9!J$G3GI?878C4DJ2P%B<T(0HOOKR1/(7 6
M]?6WUN&_%BZG\CZV53*-LJE0IM4UC+HRA735JB=3R.JJMKWO48WT/+V'JZIF
M:55-ZFA_4LA!66+G!\9[N*KMD9\_:^FY4<$!U7)'4@L=0F6B@1::Z<],30,=
M]4>FO&UIOE'2+E=HZ26]*55CFBK*WL-5;8^AK"N3D,>L'5.LW?N;_5%*RC25
M1K(I=36$YS+M<J]Z5Z$<_"J^[._Z*K[L[_*JJGZ&.I,K*QVI\["1&BCS/C3J
MU8/Y6R<,9T"! P_GM1.&?)TCZNO\(NH]7+4E:F>U!F;>D7'!LUY%Z_2*=%I?
M.GE,V4]#_IP&D8=CN [)V,%:-HO"B']=/:=-@2LM;G&>(HS.V'Y+A1)!C]Z$
M1,(#>15^!A/'!QES8'][?>UP?NG?49@-9.H\DZNGD#A_7M&^2]?.^-691;A^
MRR>VGI\]W-:H=%N?^,F/;.VN)NMECVSQH%?:77)RG_+ )H9;Z[*L6I5T(5N&
M;3^OR;G#3CG@(<4Q]4#>'.'N+0X=85=A56M?856ZW'_<]1]_?/_Y*'SY=?=5
MZ/^S_WCWK2_</]QV5S:&5A)RJ4KM-^)ZR:2B"O 0Q,#L& T6^"[Q(^+B)SH?
M!SO(T*);WD3X,H_SZ<?P W62"1\2WTE<#Z[[N"+VEN=RU-&O"EN^Z 7)]N'N
M;1IB=QJ7A<X%"3S.C?#4\)>/R\D6.0(U":1F&(D">1L0G#(-N\/8KRD)L[^H
MBA=]/& 94GFK;%3#;M@R'5A&NI:U8AHO[:)*"1]Y;\*$NJ$%%DVZ&?E$KULI
M1[DH<I>G$Y6/5OOL18-Q$"4A^3[$<#X0'%2=^HF:#'%O,6^IC^CXS0&09:W%
M<H+7],U"WJ;>N$+>ZE(A;SHM8<#BXT48#LQ'"*8L4!8)'\0CY W\_NH)IT\C
M=*/K/.%8JQ:6/_C-*+B+B6K]G(0TXAPC6G?C7]@681H!KK97I:0"+%JW=%=3
M)')BT/NXMO?TV6R(/V!^@4N1L03[9<8H9@%+"\8P.CU%$Q5S\QR<4J'DE'2U
M 5/";C"6*)F;U3@Q"!C6E&TH$0:D1U-6WG,\FZ=&#C!&>#QFB2BBD$SA!O)&
MPH$7$;IUL>T(*0&:24' :,)__3]+D>5/92DJ-X&B5J>GZJ(BY^0P'  2I0FX
MMSL]2Q4M8]/ULPLD'UFBP K?1VQ39)<+PS"8"#&8F;!IS5#?Q?%%P]D2:A9H
M*AY5?JPP<L5<#B//B^9FVV3.YJDT+\;[@_-QLUX4^Y=MI[\8TR(O*M(G^A?]
M+'_Z>-VVA(UYU#MK,>A$$8R$Y5JD^Q6C!G(PS0%B^K7@# 8A_NK01*L!*KDN
M!K\S?6.>\3)O!T+3,-)'P2T9N$%!"8473(K)7D!S+,;HK4UYBUZ?CF65;U@B
M2<9G;+-ETZ!9(X,QSH;E]@0I9Z6:T@%Y-R=<CC6W<NDA;O4\GV#L!VA))571
MND:ZJIPAAI]]N-TMER.H[3Z'N!F#A8%&2/Z&!)8O>CER#ATLJ=/3]!SE!.E9
M+HOQ6".4.SU3-39&N+H7EM!]KLK-2Z]G7N7.@BP:$"I96Q3A4A,PSC(!%2>@
MV9L:S9H.0W78);-QL/1NW":"@4==<C1-#CEIGGSY?>)[3TDD_!AG*9.Y/PF.
M-Z&^/L=]H0EWJTF36;9DA F6Q!\$2>@\HV@AD^DXF!%4NH">43*.:6Y>E@*8
M_2RX'O!T'(3T'?"1P+S2C2EW2C2%%D\GX+J(C1M-92%(8A0>$4L07:)(9F;'
MLRD.AH!$]IX6B<JXJV4IRNLZW(')>/E(H(KP=S:8&UP^&,&6]#Q+*]Z":WM2
MX@F%]$VF4R)5T_V>:1&I1K!(R=P",O0)SM/SMJMO9VX_9MM=W9#+GM^H<M=6
M]V:W%?Q>5VMJSJ5U;4GG@[K@0<G5S@0;G#57PLE]M*93=GLHU2^DV',*'DC!
MBAV\+HP41V:[:I0J'2IW1$(]T/95C%S!D+J7J$[$2;>7='_0/XA+B>; F)QG
M0C\_AV!%T$\8:<!H.W2\D'Y%G4KTTX?;SP_LQ[]\Y.3F2+U I%YL'F,ALGU/
MXB@&\QM&*@I/!.PP'XUP,!VG]'B(9S@6)&39$TA-WG=>E^N\N%F43_IMMA&D
M<?/JA.Y#X#/OQAUUWBSU&%]:[(>TI6.Y SY+[_1T11-5I2EU_6N 9&48-HB=
M+ZY!7C7>&CCN#Q)2-MC#8$K&7J_3,#XR;V5;T0W;A7['#>@S[#U?8-?Y7]QP
M\CC+Z/1DN6M6[HW4'+[BHCY#HG*)HM[L]#33$@VM<C&/YD"2B_IVBGKEHD2]
MA=DU7<-J"%]=;%VM0H"B2T(.LV.*)/86:#79[LUM;RAE_0R8KFGI+<W&:'!3
ME'/B1)I4GXH#\?"=0#WI3I "\9!=P)8Z/;5K5ZXJQ)'8/)&H78Q(M&40B88M
M6FI=37DY$)LF$K6+$8E*IV=U]<T0R?,@L=V._[LLHIQ[^ M2[,,EJ,;S92V]
M$ZA;$[PV3FXOP-/36A1>@EH\!^%!NX &*HG9U9KB'N%@K%,DGD$U/EPDZEO3
M&;E(;! *+T$MKB82#2H2[::<Q+3;8_PE"(<$ZZC\G;Q-L9$6]QVW24-.ES>!
M\=SX[ATN<9GVF$M<:>*1O2DJ]J;%6GQ_X&Z3ANX/IU69MZ+RH/W"HL$D.<FF
MW*?7-'!>A I=G\RT.SW5$C6)B\Q&H_(25.HZ1:8M84=AHRO5U>N:.Y\+1YT3
M++O6A'CSK76DI2+ETB^"?;?M*?KE12C:DHP1BH8HYVPFA]G%A0'0T/#%:@!N
MD'PH'=M8?.87Q[([=US]@@(?;8F>[YIU.?:;SJU\ZRFT]1B7N/6HF =EY!9O
M;">8^=;#MYX=?-OXK0</E96N4M<)RE'9M=W'*ZP<5;!83UK]*RUPB?6@ZK (
M:_+9E&D]E/-KNS?N;39C-1&PR?E8(?5QY*2285D24+?/'#?95K[)_#H8BG9=
M,?\U8N),7LMSH[Y!PNBH;>7VT>;B)$$S3=%5*7"0=F!T>JI<G_/W\D4$WR2/
M;-V>>Y,L:>]BJ(,N2OHY>CHVDT/.S15\$VWC)GHVH[J&390%G6@MT;.WM!^M
MJY/(OOOVDJ<*@LOW)CA3SX'RC1#.22_Q7&2ZA+#+PQ)4;6E'SOY*SZA7 A^?
MV4NP@OT &-OQ_$7Y>^IF6A2Y_["WN\(E!&8=2%59VI[V2[LQ>=A08#!.W/(-
MV&3-; @=AMX;<:_^0\(@CP1RI^=[XTU081,%$.\(HY6>9&E[HY_]7_/N1L<
MD=40XA4 D=+IZ9((4FT30V+YB>_M7]8(U*A;4(/.:OH4[,R1AYL?Q\6-+ET$
M^;1\\GT\I.,=; D-F7,!7M%W;&,N&8(2L"YO.I\!,9VC8.4,]>@.I1LMB[AU
MHVIE=SEJ8-&>F"@S:$<6EV!7' \;S251II/C^TC: //6"<>!T/<F"6NQ"3^Z
M9-P5<+?"ACMHXHQGK'-< #:/X&2HV=)4!S?QFD!!__E?UMV']9R45V  =!I<
MNTGX"O9<1/S%VIN='FV&=34C3KAN?:6G@T(4L#Y[@SAQQFD[N[1[D8NMD/!'
M#TS<%\_%"UP"0\=FV3[K3T0Y;@H/)-E7KC,3HF0P8K3#GR,2QV/LIA>$ZVTL
M_2!.;XH)KAA50+M".EO\!KD8+Q^/A6 P2$+!FTR(B[V@8#W@Q?#,F$T!'@BX
MHU3%WE(QJ*I(0^SXQU:?K2P\<Z[%CKRIB$W G0%V%*1[S[R_%.VCA%=GC7[^
M%JVVFFHE\]S DL4Y7;7%DDW@M#WMTNY2LZ)/PA< 3SYS@#A$CB.,!:+'(';&
MR[]CI^V'(/XG@==F[?0V>Y#9L@6*EK8MT@B;ZRXWYB*LT1D@B';S1G2E?21Q
M$/#%R(F$&8GQAR>RW,@/@ 083,9QVG U !9C$?5T>W[U ,.K=\#/SA/@F(J4
M/0+E="1D0N9+$*9?X77Y(@<%RX+,:&IVC0U!@Q?E-95=[NNZP@<I(#7L9#4-
M(OK^:[H<()32!E:IDW#IKM31)2UN<9ZB8)S$VV_9Z$Q2G-_*-RC/YS?96"/,
MTK\E.N:JTKQC[BC,AC]UGLG54TB</Z^<(<SNVAF_.K,(O7/+G<@\/QN2K761
MYNODZIV^.9DFZV6;D]E6UY:J-9)B$\.3@>6HI%5_:L@6;]O/:Q%-AT46P4.*
M(_&!O#G"W5L<.L)OP=C=)OZM-3B:^5T@[OJ//[[_?!2^_+K[*O3_V7^\^]87
M[A]NNRONYU82<K&%"M] PT@FV\XO*)/L/\$ L4IH,\C; ,P.'ULXPB<Z'[JQ
MW*/$\2;"%]!,_($'RE4_AA^HNB]\2'PG<3&+_N.*TK \EZ..?E55X8M>D&P?
M[MZFH 1$3!V(1T$"CW.I'HE:!'Q-%SD27)2:(?;Q?!L0G#+5I%%/ *TA^XLU
MOR[73V7EV$?9"*YLV#+1[>5,:\7TO\?=_8)7U6!ZW4JG-+9?SQ=F[<3K."J^
MT"<3;Y>P7]<]-H0]TSW4KC#_7W^Y7[DHT,:S\Y:S.&O6:7VY(2VVJP5)E>IQ
M(*EJZE:_IAMFN<^F?J5TA/G;;N+L6W6K5G<V,^K#TT<&G,U_;YZ?0_*,]J[G
MQZ'G1Z#K4[-[1[?8S2DQ[O)P8XGIYKZ;GON[_[(S\CVM?PMX*^ZS25$W3'Y?
M8%N1=O4%;L("8CMF9]M*99V!T^[1U(=D?HI6_(^Y5O1R:^#MSK<S]P8&X=B5
MF Y01O\V[:XD&[5UE]VMR1?N+FMU)7UWHUK>YK+H3(_0 >]4E"JH$6QO)UNU
MGD!IVM5\__GB0HLJSK>?'X2JK0.;DLA3<,[]Q7YQ?;0TG0+W%\K&FC_\8DMK
M%%R5I:B^NJMIE"'1&:-6"Q+JXCHH%75]E#CH4'8?<QRL1F_&H:\JUL4.@A=G
M((K<Z2FB7EOQ@'>;HUD00TO!P+S\Y=DX[VD_YSUMX;RE!5SE/#F/NQ3,[^"E
MKT[)6KSSPI$82S[NEI8M7W3OLX-F>B:]OKMMLI@*&YC5E/:N!;(;\H^XBY[G
MJITBCJ'R'M0F^DH'6WVE_25O\W*01GV.YOV.T3GNY[[10H$7-^-Q,*"?O@_7
M0RLPZ"+*\8IJ3?>*;EL/P8FB8.#18\UY !6>=Z5G!,OA\)Z?!<;XSUFP3;3L
M&&V97U2UNI)5UO]Y=+^HVE5-E0_J@@=E58MU.;:S-_=^NTW.8G9P_(T=&-^M
M1)8?S=O>*@+VO;<"Y+O@\YE2<0C\A*8(K38.9CBEME-*XY3BF#HJIMKN:T)+
M#:,]0O)"_.0P5RX_#WI'YT&RKNYVGZ5^ >+FNPWNF$&\-R=TR3&FHP9A*;+R
MJ2'.,<X8G#%R&$.KAS$V&0"KS]75PH!CGV/_"-C?DPU9_Z9@\DV!,\8%,(9Q
MK$W!ZO3,RO5(>;!+H27_22+BA(,1*Q$%IM(XF.*Q+X]\.1+7F,?B&KM!<2P<
M,/4!QCH28##O7*_<%((#IG& L8\%&(Q#K1R$R@'3-, 8TK$ @Z&51E-$3-O]
MW;\3GX3.F"IRCCOQ?"^*0UIWA0=;'HEQ]H1;'LXX:J>GJ74U;&J ^<\1DR)F
M3^3[X8C1.CU;:TJ(+4=,?8BIZ4QJ$S%ZIV=8=?5PY(AI#F)J.JPIEZ2F8K52
M4=:TA@"J[7Z[/M"?%7>9..&?)#XTXY7;1_L9JJ83H$V>,3N]IEA''"_UX>58
M!R.JA<T<.6!:!YACG0FH-O?8M1(PQSH3T+ YBM04Q+3=8U<A>:!ZN_I"S<4:
MV\_^6($:-1*G';+F6)%_F@RZ3$Y'D$H]Z6M8MH;&1W&FY4Q;G&F/$+*XWP.D
MX6F?*%EU'5MPGN8\S7FZ:&F7PS=BM=,S:XO!YTS+F98S[9QI:_($EMR(-=R(
M-;MRP_I&\'2Q9M07TZ3K.RL_'FVKQK-H8;7<FXHV-=O=[$ XL-W7%@-OK>]Z
M5@QL42HL!6>?-8B[]_MIP\5-.&+_1RNG]R-.I5QGLJ,/%=/1[$T%EO7_8KWP
M<#E8"[SR$ZB+UK=.-,H;OMGI*>;FD?[Y*+UMH!;06=M/YP'<CGW9IF2 <6SC
MF?"A(!=@;]!2,]YB,M6(+1OF+&W*Y/*+LV53J6^HNM3I&3GA9W6Q05VTWH(N
M70:-MA:!4Q>EMPT4+&9+WSS0RV,#<84//A;IR;=[3RQ:S="85S,L57+O)VO!
M^,,)X]DC$"9B<XL^>]%@'$1)F--:!//O-XOHG;')CK;49">=D##%&0GQTI0V
MJ]Y=C#;RN.B$\K=HWC83I^@1U@#V%E#GA8ZX:+PJ"L%PZ U(R#B?"H$1T!J_
MB$= _.#5!\$<HL8"DY&EOZ[U7/E;VFUEO;%D2]JP+M$4-J9GYYE$5(5;0@PK
MM)B2%COA3IP0QH J7I \LQ*,TS!X\:*TZVW$RE4RBE/]$40)_N#Y+R!O@G &
M<@Q6@"F*^";:1M,9+]WY#!LG;:J+SQB$011=#6 9GFM;AP-+<FZ3%%OZ#^D[
M*VVNUH8T8,&6*D\:J[;V8D:748S2[BIZ PLCJM;N)CU\4$<9E%VEA&0&9>!7
MLMUQMG[5$<KYE?5W'58BJV F]+8-?D5<;SVNOXSZCB7*8^8:5^^\/&;AXIC[
MB7?N*J]-IR(O[5>83N^]6"3'TS'Q=*EA>/OMM:5,"K"EGH/ !>LVLYC$I=:Y
MGC\()AMYM)6SC)I$ADNK:51P6N7B:O>43MABJMZP7M_?ATO?E3VTT_5.SQ9-
MI:Z(N LX2N?L<?YIE6(/<T^AB%+LL<D!!M:C:4K^(,<_Q_\&_O?$8!US>S"Q
MNI>HM"EAF_-'V_AC3W6+BON#U:3]X5+SRPNN^_W\7&F:A(,1'G.+JZ=0S##*
MFH!M-:PO)U/O*!RQIWK',7<,K <)&T93DOG>9_KG44"U)R?K8%#M+$MM2+65
MI>:(:AJB]B0,'5%,&3***<OF8JIUH-H3_'XD,:4T34SE!+"_CX 50^I:EE5/
MQ(/9->3&A6'@H/2C=O(\5\1$07FP&C+QY(P='\V#0N$2EW%B5C G:"4!XYT?
M,A8DV6<R(),G,"%5F47LOZ<SQY\P>>\%Y7$D?/"#F C&1WZZV';WV)XR3]_1
MH[*$C <2WR9A"&Q;6JE60:E61%UJ44%8S@YM8X<]1:QJ9 >MT]-$VVQ*0>V6
M^XY_.+/EG4V6BF]M1:WB)DVW."_GS:XEO+RO@N%@0*WZ%!HI']_X[D/@#PYD
M:KW34T1)JAPPTQS'$6>+MK'%OCJ-1V +5H=;K=P_[S0U' ]+1#EA4DM#!KB[
M $9.08SL:2EX-33*IP%+"[RFB9[>"UGX]_ZZFD:7>@>EQ2W.4Q2,DWC[+1N>
MAN*\^>A-0%MX(*_"SV#B^,"@AV5>RN9:5O32OZ,P&\C4>2973R%Q_KQRAC#.
M:V?\ZLPB)/6R7];SLX?;&G5IK$_\U%Y8V^YJZ&XLYX2UK:XM[<X:W*>.LHGA
MWK)<WB65#^FO(5N&;3^OE88Y3)^%AQ3'U -Y<X2[MSATA%V)X-:^1'"ZW'_<
M]1]_?/_Y*'SY=?=5Z/^S_WCWK2_</]QV2SFM+I*02UGUWXCK)9.*?K\'L DB
M(0Z$V\!W,7;$Q4]T/M27?(^RPYL(7SS?\0>>,Q;Z,?R F<M@422^D[@>7/=Q
M)0%Y>2Y''?UJVC-?]()D^W#W-@U)%&75C(($'N?2K(M?/BXG6^1(<%%J8HT!
M\C8@.&4L%$#CC:8DS/YB)X0?#UB&5-XJ&U6J&K9,!Y:]J&6MF)[XN+O.#KLH
M._&@UZWX\-G..U^8-?6EGD/0;74(2E0WP=I4AU0ON TF$R^F,@FT=9!?V'^%
M@+@B.PN<8*'_[;4+ZBE>45?M$WVI]LG2=%GUB.4)7^<)X5JUO?P1"N7*KIR\
M#L@'YR/CDLU_$3!HEB6PNPT6M"U1AH-QA(<[:$RUF,NLC^(!GK*$^P ^OCBA
M1^ /V!?F]4JBK  >2%G0"<(9D"P)(UK^Y"F)X/E1E%8_>1UY@Y'@Q?C<X FF
M234*>#(2:N+#=.$=\<@+LR-K>E*=%E;"ZP8@C!UX'1C<H(5$7>%Q-D7A/)Z)
M. 1\*7LL+0L @X5O')P#/",9QSBD0;JV$1KN\SHM2^5O:'2*^2G""B]NDKX7
M%B.88 6=UQ&AE7,6-**%8%Q:1(9- @9$70_.,PPUB@60-A%AHP&F%(9A,,DF
M($0)MG9?O&OL.4_>V,/R/C Y+#,#ZA@P,P#1@]?!%8&?.]CA7!UC4XV0QGX
MNUWR]*^4>F!318%/C2("X)JP83Z1@9, G8 P$<PCI+\G?DIJ6 3RYD4H6*A6
M"/.G@<6#L>--(E8)ZXG ?%PR+WZ#8QD+01)C4B92=S$)=AM,+1!0G117*#ER
MV) ]YES!K>V9T=./87@XB*P$$HR$K7<\F[+LT#7JYQ3-N1@._/#T4=@EFN:B
MO?;Z3*L;O;5K9S^?1&)%FZBFFLF#,7G&SKII.1"*0^=-H*9((?&$=SR1L4=>
M""N2)0JL]F?*;9[/O'S(+ZGC;PRRZL7QQL@N#,; =<A39!GY#*2+.B7 +8CP
MD?,"WZ(4 (K@R%U0,^%",AP2QN,P1B$ G=K!U<YX6@3Y\._$@UF!" Z7>#YS
M ^64G5OW.Q75O*S#-*\^><9-X2>9!B$.?:>Z9752524A[DV<?H?/;%25.6-)
MTTJGMPR(YNA7*]R?ZAY7JG%)RL?-ZF:-; 5;1A0M=M7TVZ]XT]7G!#@A2M<$
M=@\7T)8!*F,?9#QVTJE_7-UO0@I2$!!T8TEW3<;P0[!S@U=DO:T'"NEK=Y9F
MO7_XLLX@P$=/),2R:OARE!XIIJ*5HP0@X "/$UY!;$5DD6\E+;C'[O1HM=7-
M^I3A_-D9<:)KX7^ 8E<_T,I/L&X@JD%@APO_Y4RFGX3^+(K)! 3,_Q#G9<;H
M^OWN&ZNQD(8*I@I)Z('HF1$GI(61'=;"'&0;ZD4AZ!)1JFL,QU3M&('$'HRP
M\B;2-F=D[:PRF D*H),/,(I07J>*X!,98O5%5K,"-RJL9>&A6PVT,A'0,P4R
M>A2YC/[.!&7I?QC^/W2R1]_]=O_X^:;S$?=$Q.P$U#M<6EJ/D%T":N70BYE*
M.1,2W-&>9LL\P-;48>=<"/=I,/90M<"GX!Z4LV"T[B0K<CBAZG4\"G"3FTYA
M Z7;,MXX6'8:+G:J:.XL[ K?'-]A!5EAH 2@1!;ZXZHNNU&@,F]8J,LZD9=6
MN438H48;H>K)# E*),?W:<&0U!A9&@-= A^-"90CSC,8.,_4Z;48S[(>@ 91
MA,\7J$'R)U(O>\32UHW"(*(**? 1TU;0I$1%@FJTN,!9EAYC(B>K.H\+#T]8
MT!W=;$ 2/+YQ88R@+*2:"*WDN2S:7H-D[#(+)X;;@!L"GVR9R)SV,#1$0NAB
MF# CV>\W-S\H1B(*V'$":OY@/HV-\2/T1O19BRHMF8ES_R@*HP3HCZL*"*$_
M4L5-3 >6^K,2 -(,90:E:[8\76$5]YE]XQ*X&5[(+,Q??3KDM/'NC%[Q1#))
MA7"!98L\X'4G1+IY6  XXYQHSB$L>9+>Y7LD*Z1*:3I_(K.6<)70Q@(Q$R<Q
MH23WR2K?LZ=E6&;0W4'N5LK#U4JVMR./#(7O<R;YG#()L..?0*H/G=OOG[^!
M9$L05&OK[C*-DE"-/7C%!24OSCA!S9L69B4AQ382%>W".%=:,,&7L<M<]]_$
MV 10GNUFL-%EHFBN7*#VO2)E4T&__]TP139!ND>NB18WQ)?-A0=%8,8WF81@
M4F5SR!3%#ML4_B2SM?%EVP18\JLR(R*I+@0B$CU?3XG[3.(")L6A\"QHBNA:
MIZQ/6C_$)_T>3^0M?B+/3^3YB7RC#V?YB?P[7'1^(L]/Y-=/Y->:B"S<J.AT
MRG&D*B5J[^_4F)KH=A4^S&?\<:W#QX&-#M9=U_>+E_TV2W_<=&)CT;UUVIM2
M;4[L:E;7EUR#_VF68Y6@P<"\GM'U=M?R=L3,5=B+R'W7S*ZF[LU]KS.2N%C*
MNMQ5%:-I>?0G'A2G>C8H53EJ]8(]2>S5@^85^2(RXJOV7-BL*M#XE;F,4@6%
M%J;(N=8[+_E0C(XK)W\GH!A'\1+U:RS'TG:@/@8Q^CB8VMJ*JB1%&R"]$# R
M"D"DJKK4\"(.Q<AU:34<BLVJ7'[KWGX)%%%?PF"2A3S_X<6CVS3:]>X-#WR!
M)#<8MQ 1]]%Y*YOO:LJ8!F[91D-J.[R;2B><20HRB;6W:\+QF43!YB)&3O?I
MBV42OBMQAMO&<'O;-!R?X5@!+DGA[1HXES242_8V:S@^EVB@NVFB+E<N_OS.
M"W,5= %@I%DP%,+CVWD+#^W%E, ^@WF$"_)]^#NV';SQW7X:T=H/QFYI3J+%
ML$R[1<6P.(2*& \U0LCH]"S1,BJ7#&T@A+A$.Y%J72,<L>&9*MI:9<=. _'X
MOC&T1_&L$4,6[(IZ'7Z/FC#4[O.#WT-,2V#) &=7+E/*Y0<"(@7:RV#[U$ZZ
M3C_H,N4Q#?8-JZUP>#'ZG]N'R(%TD/*Y&TAP=\^L7H?THH#$I=LAH/Q040?%
M,B[P:2<\RVD.%NU*9BN;RF?I-AV7 5P.MJ+*ZA' IB#8)&NSM6V#P-9NU^@B
M4SA+-;\^B09;GV/CTN]_G[2LR2"DW*QW]<;RUT\2$2?$.@V^"_+TA8R#Z49T
MW1D5J8O:P6H.T6(K<^.[GQ?K<L>D8.F=#(^]14-M4=LICJ)B,4P[4;0)%#SY
MY=%(7&Y5".*I4V[IM FUU90X!"ZWCGS6\#H-X]T0NG$Q11F_^!*$/Y%H0*'2
MN#(Z/574M:;LAS49<8U7-W\G/MAS8U;<SIUXOA?%K([@V17.UA_O[3U]8&L#
M3'>SLC([E 43N,CBY\ M \K>TX7R0+$ *)M>M,O'"1=.)](J]V*NY/YO8UB>
M83<E_H#+KA/%L-2,(UM"/5*6FX*C]^*V[#OCM#CKQ G_)'A <'8%LO4VVSX%
MLD_&8\P[\-UOV:)L5PEL3 ]M2M]O;M:?2'4L!Q$%A&L+$<(%THF4QG)H4P%M
MK71]OV^,[%$(RV%$0SNV*<[H]^(T_+S4%V.C+<;9U;[6FU3[U+[EY;E96AFT
ML0:#D.#G!Y(7B&KKG9YN-\1TXB;XB73 PGA9-L6'WAMQK_Y#PB /1P:6XK44
M6?G40C!Q078B=;&"(#,[/<NH7%*B@>![WX#9HSM6 (S5Z=ER4[:^JE[#)EBY
M+0F"KU4SFP=/IQ9-5-J]38])9*DN+PQ/N;A@M.W3ZW+0M@XH>*M4A\I_47#B
M@O#LFEU500A#D@&WHFG4Y1^\#.ARN!VD%]8 -Z73,T5;J1PS<^[TLSJSA_A5
MI[CJU/F$M7;'*<;L-ZXKX#RNA4*NY;H&IW>M(FVE<GI/(M]>J5TYIS'.DQ,1
M?$*G)^=TE#JC'^D];@QE7.7P>4PR;\$2ZG*W TS?TNIR%YQ?]ZC)\_0>(5;&
MN[X=8D5=ZS! K6[?^F7 CTO+LUMM!TM+'91GLZZ0S,N *X=890]^*8@9G9ZM
MU%74M4'%02ZJKEW6'/3NM_O'SS?G;(^SVC-7A95R@P2[8=)5K,!Y#:)VZ=+L
MM1"EJ6*H7+6B3<-@K5H1S7M-\7SGA#[,/_J-@)I&:)-O$L6/SMO*>>,NE:Z(
MA\FDF=4Y1L6AM8TJK?.9/)V<KSE?'\$8J\[-.0QK=7J&65?LZ07S+-_7.?\W
M95_?6_+R]/NZ#6)"M.7Z"F1>HHS@?,WY^JC514_.U[*$74 D:[-L\\7P-75&
M_#UVX%79(17\DPUWXH3/GI^-RH!%3;_!D:PEI["NQ( A^K#YA-G(8;)C9QJ1
MZ^S#IVSC]WR*"WK3I]7WY9RLT?>QGS^]>FX\NK;MKF[(J"2F+I7TQ>Q7N0LX
M^_OF]YK9560Y]R>I.__^"%K-[F')<E>U]@ZKX/>J99:ZHRF#XE2?#TK?^:C2
MCL13=X17Y.*#R=FWF]7G?!02(DS@NE$D$-\EKO"/Q">"*HF"(F%0T)+ ;_S*
ME!A+TQ?F?^#SU0_8W:,D) +MO@BS%/[+F4P_"?U9%)-)5, -775-+I^.Q'F9
M77U.XIGP_>[;"2C&4;Q$_5L23;W0X4 M((F#V!D+J9Y?3>Q>U,G:S^-W(BU#
MJ-:9VA=A,I>SF-5S=RT&&UFF55UK"]*_ $<6YY)SSZH<EV@-X!+L:B.)NE97
M![ &L G?F#C+;6,YO0$LIW9ZFBC5EOC8 ([C7-(N+C$:P"4:;$R6*!LM*[#5
M4-1C.V<A& KA\6V],F'*+0Y&WF,BU=9?&UA)Q\(-FEZY< ,O2=,P#.TQ(.K$
M$,:XBXI=V4QH((:X3#N1=ETG'K';B&A+=65=- F/[QM#>W3/.C%D@8JIBX;>
M%!"U^QCA=^R]+$QI\^6SZY?ON6#)'LWS]X-[9 -+V9A((DOOJZ@3!]I!ZFD5
MH"D2 DW1*Y?9O"B@<>EX=AUV!;0YN)11IZ@Y,:?AJ.1(.DB3K23^%'3IZ')=
MIW8-2CJ_*+?IO+B;0-+J;M<G46WK<WE<^OWODY;OI;5;UOR9EF-S%^V?FV(_
MMGCWVAO"55]G=]C/L*:9J$E-.>P[L7K48ACMC7&J%48:JD62WJ*8/R[93A\#
M5"LD=>H1JUX>JH&0?-\PVALD4RN,# P:TZVFP.B]M)M+6T2S<L K3:+/KH*V
M_RAPWT'%OO;=.6R$Q\;5.YCP0^.&(67?24.MC=X!1A;=U/7-NBJ7#R0NODYU
MDG" ^+([/5/66XBZ]XV4?2<%-8LO5:*=O,S*#46:%??2>&6R#PL1455RDK67
M/KL6V7X[;8\66:;G-[ .GN^J=44=<&/^_[?WY;UM(\G;7X40WME- %K#^[ 7
M AS'R6:1. -;@\'^M:#%ML4W$JDEJ<3>3__K:E*V#LHDQ9;8HBJ+]=@2CSZ>
MJJZNKJI'%)"4&) U0:+1708Z(5$K[6X<U@2<WAM8'<HG1(Q4,0MK8L3H#<SF
MH<[H/ZPUX94XQ="%V);QMS-I-Y4GLS<PT)/8-<"4&()-  -'.!W$"RJK ]F$
M3;!G]P::A8[#KB&FQ$)L@AB'[F%57KQI;7L(1=C,GF0,?(G]U9P<6V<99XXC
M/CDVIERT;KTUAYNA9%4%3PMNJ"E;-_XX0%?-3OU.*V42X;:3Y<@!;EIO8,N6
M*GXN9(EQR3/#"*\ZQ%6'SCED[#6'%?9+WY>@'^=2)0\SK\:9?<>LT+Z+690$
M\/[SF$Q8J,H%R.V9WE<+N'7NO83 $Z@A_Z(4V)"V[1<_R86AAL>\#DFV 1E>
MS1>#6C-S!+ZIDX18#1_[=H@MFR,/P1/QS_Y'XJ@0>D:/PLS15.WBI."'VK+U
M7=O.VM+L#4R%E[_^.."*$&OLXZ\%,:LWL#1>!]@"%1 YJJ)X.9N0=/WAR_#C
M99L4.Z?-<WLB3+8;QCUW)ML"16-316/RHZH5T^&(XH7BM;FQ:9LHVG# YZ^K
MF\=5W9(^7"A1DKE*\L:^KG5)9G$.IH+K*$I?YZ5O8\O;MO29"I1?,>Q-_[5
MTI?OE!<M6$R 265KFVBV463QM?\Z[:0?S>\G9'4 2EI3M9KBH5[4^=$Y#F#Q
M'1]Q(;+G#K#)_CWU*!Q>SF$SG7<SGU+E/\K^!I4=A'.F3MD)^.*!2_HJ8^_.
M%YO!/^YC>/SR >_2;3FH##@?WCP]_A7XZ7CA/5VZ*U-^Y\KK+=X]U:CS=/LM
MV]I783$<!E.22#?DEW0;3;V0KHAKBZ&JE*V&&C1'==?.N9=^CN/7F7DD9_<Q
M\7Z<>0^TG>?>Y)?WG, <+75G&H2+A[L&2X1;[SB=>9C,-<&GW9QXLX2<+WZY
M6* O"%F+V4T74R]^I&_(Q[G@\)X-9_9U_F;7[1NJ"2_/O;;YB_-V]6F[?M_\
MW'7ZKE+\E=)7?ZOB"<XZ!E;>\LJZZJ".LVG8]O7:JKQ;7 A]2'5,W9 G3[I^
M2F-/^A!-_"U6ENJL <LN-+/^NKX;_O']=BA]^O/ZJW3W[[OA];<[Z<O-5;\6
M7?U1#N2KI2I](WXPGVXS6/M5(EAZ@YLHI<*>1M)5%/H0 N?#;ZP_7DK_8)9F
M,)4^!:$74C-S(MVE] LP21/IW3STYGY KWN_HO:6^[+7UJ\J6YSTBL/V[OJ)
M;AJ LU0*0BD=1W/Z.#\!9LP_0YC.;)(3:B]1K1DGLD2>1@2Z//9BPL*O9B1>
M_#6EYG^:O-]A&G)]JZUL$*#W@DW3;I%O?.8J.Z@<CF.2#7P2/$E3>M<XD0B5
M6%_ZUSPDV46Z(DN:HIGL.OJ+41!G5F3WL)]KQDZ^)W1MY4S-=J[T&^)?IHM/
MM=[6>RR'?KMQ#_U4WWTL[\@T>&OE6#=)-E:.S"2Q^M++O\6A9!!FVV3HP;N7
M5K\_WS#B*EEX18;7@2T3JV_I=EW+Q##[EF&_:9GLQP/]=K-4M6^;;EFS*GYN
M*&:M.T1I%([ZHE'6VR^O'46AF=J#Y1\PP$RMWIB")2K3*'6\G?FRMY>@CJ*5
M2%HL0K7,@=;GI49;1)^6?]+?S_X \VY.K3/&7$][*?W-F\XNI+OGA!KO284(
MG*9S<OSC2+R?SV<?Y^FS]/WZVP%&#%&\-/I7))D%L8= +1^J893"MCRS9INI
MW:,**KPE/PFUU-N,)NST8>Q1'+G6.W&UR\@L&*(^Q=&4K9OTF7\%Z?AJGM"N
MD?CZ:329PY!<)@GSG@R]I_IGK"J<L=I.XZ+JXM0Q1"GIEI0X DB)QDCK%;UQ
M<H@X8H(+$XK<-I%S!1 YO3?0'-E1.U1A%\6D4V+B*@*(B4'M-T>V#%&JXW>;
M>OHJ2E(XEXSWO]E[==*>=+'%DCT23,CWA\]1Y">7H7]'XI_!B"1WT<2O+TI0
M6UA6+5[E$HXLS;?#&"K90?#$D 5,);)F(TD9*K6=[6N>@&3<B[+6G#U'0$">
M-(C*K$^>('+HRFC+5M>XRP0U,C_'49)(LSAZ"-+6+<Q3+M=88GNR>?J#35.A
MU+B]P3%48N3I2T0D[62!KB"IIG*V%,A1M4U>?K+C !JJOP-DA&Z8J6L9H5S@
M"]R.LJ%N<F0)E.2)*K)U<[9DL;6TWL"U>)UB"U18ZZC<HR\%K"625[ ^/X@!
MR\^S<>SWG^98G@J7]2U)B!>/QBREQB<_R22:;839M6@F=7=Y*H_5RF;F,O0_
MOL[+KESQ%AQ^R[;.B_#DR.R?#L.H-)CI31@5(,6  X?&!44%Q FJKH-%\W!5
M7>P4U7%%B4= U76P:!>N,+* R,8NJ&!ZU&$MPEN8GTE(MW"3C-/$GP9AD*0Q
M*P?3NHW9^1.]TO.&;&Z@K-K*S+QE'MA4C+B5M,>S7U&04G:>L -2G-[ ;7R&
M("!04#T=R(XL!5U=$\#M#4S9:!X +B H3QI(I:Y^SD"RE=[ DC5NM!N"1*\(
M;TO>T8E(F"4Y]>(?!,X%6C<B.[]-*S,B[\AD CD'H?]M,2EO6 4VG,Z:N)?O
M&DA*[,>:(-%Z@^;*54",H%(ZD.E8$V\ZS\ ZD0!WTB I,PMK@L3H#6QW,ZH(
MW8?[G/!*O,CH06S+^%MA9UB:&=AJC48Q8S&\(84!5K8)5,+H2>P:8DHLP<J(
MJ<X,;%N\F8%%0A/JL@/9C#LALXJWR&:<3\T/L 4$YTD#JLR^W!N@'):@(<PI
M7%/WHPA;Y5.,D"\S[EZ"K_-=45(?J6YOH%.D\@H[Q(2,8X9;B658 +=-1#E*
M;Z"9O*JF'0>>4!6V;ALV5X4.''QHLJGR"D [#NPBWG8R'3G@#2I,6K+1O'!,
MVREL/#.0\*I#7'7HG,3=.'<:2?NE[TO0CW.IDH>:5^/,OE.%5JF >Q'D]DSO
MJP44._=>0N )5&$4,"JUZ(LZQ96ACL>=_CXAA<3(!>L!*W_**_2M?>.#DW?J
M)"%6PT6_'6+5_?..P=L_?QSP0VW9^KZM/I2KF-8F)-/JKG92:$8$-CX$X(=
M"Q!H.8VC4?:.P&X7UEM0;%Y_^#+\>-DF4T\#T1-H/&O7@*_8;5$U3<WR61M;
M@[7R6;]F<7J>8_+:BT/:_^0#H;J%,)IKDJ1#[VGE5+*I'K)960EWTZ?9K5I;
M*'U=E#XNFZ;#RQP[_3=/[$P5EU 4XD-4H#R\.+L0!BN;^N8Y#:ZA*'[=$K_-
MS7+;XN<J[%C>T38]XP*)7[Z+7K1@,0,F%:YMLME&><?7_NNTDWXTOY^0U0$H
M:4W5.HZ'>E'G1^<X@,5W?,2%R)X[P";[]]2C<%B<\-(?B\NG7OP8A&>9TCFW
MJ/;//P$@K26(9?S@ !%XV!KP:%,FWBPAYXM?+A:]#T*V@+";+E;?5W LS=Z7
M?7WQ*_#3\;GK]#7#A)U;[E',7YQ]J_;I@O3[YN>&U3=5M_ KI:_^MK^=QMO-
M4M6^:3AES:KXN>Z:M>X0I5$XZHM&F=J;CZKM1]=,[<'R#WA J59O3($)GVF4
M.D9M?G2Q%[=^\"1-Z57C1"*A3WSI7_.02+HB2YJB&2MFH?#S4J,MHD_+/^GO
M9W_034 RCXG$&%!I+Z6_>=/9A73WG*1DFE0X@VDZ)\<_CL3[^7SV<9X^2]^O
MOQU@Q!#%2Z-_19)9$'L(U/*A&D:I-Y%R=T SM7M4Q\JW^R<#KC-0G?.Y'85G
MK9YC36V?.9RV86#)BL&+-^P(?-8H)6WWJIZ4: )("=0VTV3#Z6*Y*5R84.36
M1$X70.1T8)!0N!%:"B!Q*"7=DA)# "DQ>@-=DTV75\*H("7N!$4]L*E+T8,4
M[W^O]^JC/>EJ/25;)([T]BZC+#)44>J#'S@-I,,8*ME \,20Q?8)NM*X7H2
M($*E=B#SFB<@;:CEY"J\<HY$PN-I8ZC$^.2)(8=B2)$M3100=?L<X3-0G$LS
MQG'>NH%YRM5^2DS/S\M4]'5%"N+'9:L@?+S+Z2 (M)WLTQ6@;6")OI!BJ7E2
M\5$A"=5?ZT9J&2H991"OXY+C0"4B:2=3M<%"JBI0,$]V;?%KBW;;,?I2^E B
M>>W#\X/8KOQ\&L=^_VF.Y:F0*"YHU5FM0O^56%V4#6*'5Z_2("V.A/>J @7_
M9-<4A;'JP.91AV%4&L7$%48&G&4YW.QOD6"$FNU@43Y<(0G,8;+:W(DL("1/
M&T:E83!<863U!H[LZJ*0$9\*I6/.QI[5RE[A8V_=!.W^65_9240V-U!58V5F
MMO.BJHI-#83F06-X*BP84LJ.$LJ04E<;.VR[HO*J4"X2D%!]'>HD80?UY?8&
M-M+0=@XI92<%G-67JL V66UN3(H5V"*\,7E')R)AIN1TP>'>NA79_7U:B15Y
M1R83R$8(_6^+27E# ZMJ;Z!;C8OIXV9>,)"4&) U0:+1S7J74HM1*QW:.*P)
M.+TWL+J(M]/&2(E9^!9&ZEJ$!GBI-0?=BX?%0R4^/O0PMF4;KA3O79H9V(F-
M1C&CQ[DAA8& JDEM -RI=PTP)79B$\!84-Q9E%P3]"B*B+X2H[$)^H <QT)]
MU37$E)B031#C] :&+8J^:NI"%&&W>Y)!\B466&-N>55U(178<4^+@@CAMI/]
MUAQNF@*!.K;1N!+"4<$--67KQA\'Z*H0U:#:O)Q QP%=A-M.EB,'N$$.FR$[
MJO@YO"76)<\<)+SJ$%<=.BN1\=<<5MHO?5^"?IQ+E9S,O!IG]AVS0OLN9E$2
MP/O/8S)AP2P7(+=G>E\M8->Y]Q("3Z *XT4IL"%MVS5^DBM##:?Y=A+Y@O4
M<L T7K&Y[1L?G)Q3)PFQ&F[V[1"K:X^P,U#=Y>72.@X$HL)L?>>VL\(T>P-3
MX>6S/PZX(L0:^_GY*4R+^0NTQM&0>T=@MROGY9Q#TO6'+\./EVT2\>0SF--D
MKA.ZGC9I=K-!$55+U:34WM@ZM$RIK6IP[BTK^J8.VY51N]$\M^0,1;E&N6XD
MUQO[M=;EVND-;%DM*)!V2G*-:S_J"&%TQ,8NN'4=P:H1FP6D!:>D(U"N4:X;
MR?6&ZZ%MN=:A,K0BV^IFR-?1"#;S6/R>>O15+V==M"\P]D$X9^-2] F]<-&E
MJ1<_!B%KVUK^R_^?)VGP\)SC:O"/^QA>N'RLMO28'!D&/&/SS.Y7X*?CA<-J
MZ:Y\O)376[Q[.CKS=/LM2PW,>)VKXWX83$DBW9!?TFTT]4(*_C7<JTH9\#5H
MCJ:LG2XN_1S'BX;,O$=R=A\3[\>9]T#;>>Y-?GG/"<S:\O#3L<\?[AHL VF]
MXQ1_,+VO0\:P1+LY\68).5_\<K&PQ8*0M9C==)'/;C[.!4>F;#BSK_,WNV[?
M4$UX>>X)RU^<MZM/V_7[YN>NTW>5XJ^4OOI;%>]:UC%0]\M2LNKTB[-IV/;U
MFH3M=AI/'U(=4S?DR9.NG]+8DSY$$W^+0E6=-6#9A1KUK^N[X1_?;X?2IS^O
MOTIW_[X;7G^[D[[<7/5K$84?Y4"^+DK2-^('\^FVM:E?)6Z@-[B)4BKL:21=
M1:$/D4<^_,;ZXZ7T#[:H!%/I4Q!Z(5U1)M)=2K^ U2>1WLU#;^X']+KW*VIO
MN2][;?VJLL5)KSAL[ZZ?J'T ;)%2$$KI.)K3Q_D)<!+^&<)T9I.<T-69:LTX
MD27R-"+0Y;$7$Q;T,B/QXJ\I7>C3Y/T.TY#K6VUEL5^R!$29IMWBC?C,57;X
M,QS')!OX)'B2IO2N<2(1*K&^]*]Y2+*+=$66-$4SV77T%Z,@NJ?($F(_UXR?
MW/QS;>5,RXQ4^@WQ+]/%IWIOZSV6 W;K^CWT4Z.WDTU5;]3OR#1X:XU9-UXV
MUAAFO*A67WKYMS@2"L+,=H:^OGOIW_OSK>;>7GI8M6/%5MDMH0T?!9-L<Y!D
M/*0SNC_(K*>\IP\OZGZYSW29&"TO#LEB*8"G1%D(*_V^V7@<UHRC0M97LK6D
MCAVG.WW=UM^TXZH^2M7[BE-\R[9';?]<=PQL%*]&[<'?6])!LZ_J6J/=P<;.
M6S.U!\LO"0-1JS^@8.',-IAUW"WY8KP/=TNV4FZLD-)B<:QEINPTFC7N%WXP
MHQ0L_FQ1J! *<?(#]I5:U>?2%4EF0>SA@%6*JZ?C%<74 J&VA/0W;SJ[D.BV
M<C*)1F!C'& ,]\MY<V3SD4G\L@N@F<(\JM"O6_*34(N^27FFSIW-',492ZTC
M%J>41(6AX%,<3:D<I/#,OX)T?$5W*-&4Q-=/H\D<AN0R29@/9>@]U3]4@>10
M0S;5#G&KH)AT2DQ<L^0D\J#R MFMFJQHHI340WE!>5F3%VO/R\I#\$3\L_^1
M."J4$!U\Q8ZF:A?=$9%#1MRAN+7=JSKB5DH7=8 UR6!KDN&*8L-UFQSX*DK2
M[+2B<)-6)Z>MNYEK97L;&,3O#Y^CR$\N0_^.Q#^#$4GNHHE?'_XFW<*8LJ7P
M2E@[LL3([H*HLN7/$TU0KU6770/9Q+J&IA*[N"J(2LQ?FYOY*R" L.;O0:Q&
MGOK,H?I,E2U3%'W6;<_]YSA*$FD61P_!]G/*TZE-5R_G8--HW++>LU'^@PUR
M?8%@Z4&*PR^+0,P$($1;;>N2'\@,R%61W8*R5PBR(P<95YMS*\;>-C(-E;>/
M]3A0AO6(6S9,5_!:@$O&D,>+1E&@PD%'Y:!\J>$KD;R([_E.T4OU-H1X?]L;
MZEW:<BH<O;<D(5X\&K.4%)_\))-H]F8LZ4E3%&[SWK.<[\507H;^Q]>!S.N%
M7_J00 $??(KB6Q@T.D+US6<=R#U,HW$11 %/D$\:6#5B>=X 67T\L1JPCB/*
M 2GBZ6"Q+I5A5++C,C&JA=N^JK-XW+)[.MBR"6>7LF7R(BD29)LEO''YF81T
MQS7)2!C\:1 &21JS2BH8'+)+<$@^GE P:&4T=U[^;3 G514#1#H&I,KF)'=$
M.5!?UG(145U#5)G#GC>0&(VEY8AR.B^J;^N405GFD^<,25/I#0Q9542!Y*FX
M*._H1"3,AIQZ\0\"#GST3NYB/MZ1R01"ZD/_VV(@7V2A .XJU< &>H8Z!I+*
MIF%-M&@4+<VI41 M@J&EQ.RK"1*@O+-X,9.+!!)T%![$I*L)-X/"S14E(?E4
MG'Z5Z%?1[U?'<%NI%KXTFK"U&8UBQFYV0PHCCTRS-W!55Y M"[IC#FW%-8&.
MU1LX5F/UB= 1##HE)ET3Q-B]@='XD$U P*#'[B#F71/H03I79UQSF$K SWAZ
MB?K-=PI)?<>O"^1JKL9KXWH<.04(MV:65W/<64IO8,JV)7[> .*N=;.- ]S
MX2^[+J\HJ>. &Z9.M6ST<0"NUAM8,EVFA0=NM_.KKO\[#])G*0A'T91([R91
MDFQD]=;9!IV@K)1:LU_8X'ZE0PNET[(1_T;2<>1_"7^2+%0VJ1/ ;?$K2UAK
MVMK>TB/^=DK^YX\_ _'7;?S5K#ZQ8>=NV5_M@,0JMH2Y+>ZP>H&*H\+A@5V;
MIXCI,L;@/2/:.@)$%[#>;;*2Y;1A%ITAY"DK^!PIP01M%$]E6ZV#R%.V;YXR
M8T5Y(D\9\I0A3UF; W:)/&5"S0?RE"%/V?;.B;JOJ^>KW3>A3)7=G=T;J(ZL
M6AU*U$$QZ928N+9 /&66 TF<"K>S0A07%!?.XN*T2E-FN5C0J8H#!L6M$^)6
M<MQYB"7)AIKH4%A E#6IVU$J2%/&86O#D8C%5BG\3=DR54&"]S'3Z-"&/T\T
M:2R(54$P=0U,)68Q'Y8RFWLTG$@ PC2V@QB-/-69P5C*;%.4--QN^^T_(TO9
MWDS&K90^5<0 J&QE4SVMU!0$6C.SLH24QX:JT":O<Q.$U#%#JL2XW*J[2JQ)
M?IRW1X4RS*EKV0)MM-:R$LXZ9M,A6QG>W\+&>I>VG$HI8&0KXQN?Q)-+RG8A
MLL)T&GM>!3PV/FD8U8C?X8DGAU%%JQKBJ6MX*@UPX<1-YG!G@Q8)0P?>9'46
MCZ41(%R5&CN>-)I7U10KU$-XPQ&9R#@[\SESJSA0&5Y6[<8E]@0\=3UI(%5W
MUI<AJ@ T1F]@JXVYD!$R@D&FS!G/6_>8L''5K"Z&#&'$QV'\[;PA:;'*GUK'
MHCZ$-Q.1:HR3?5B/J,6Q*=R;Q_\*N$D_:9!4MOUJHL7I#2Q1<B40+ >R^FIB
M! XC'%&\+.CV$P]P)19=/;BY2F_@<JO3CDX]9!IKR6YKP,#B0OEX%8G?.X:8
MRD9<$^AHP N*CKRN0:?$I&N"&)WN&-%AAPZ['<V[)M SJ*W7.&M $,<<)@GP
MLYV:$YFX)A"-62KFI"#<JAM>''!G9:?OO/PEB+MCQEV)U<8!;D 3*]ON:?':
M85)4RS8?!^ RDEE9,\17E-W.C4*FL?V;L]R9GEQ^E05K35O;6WK$7T7[=K_X
MTQ0%\==M_-5D&MLP= _)RZ0I*LMO4C:M8(%XF8[8M7F*F*[*3;XG1&M'@&AD
M&MO\2G3^+&P4,HUUF&GL+GC:SC-F(L\8\HSM;\"09ZSF@%TBSYA0\X$\8\@S
MMKUSHN[JZCDJE-9)*C1%AX!ZV>)V]"' T1R*2;?$Q!6'9TQ3C-Y <V1'[5"B
M$LI+E^0%SD-:)!K3%!.K,U7QOZ"X=4+<5 %L."AX[LJ.,"7UNAVD@D1C'/8V
M_+A4- 7"#FW9PB)3G0-15<N?)YJ<WD!79$T7I48+HNE =C$7IC%-X1X-)Q*
M,(WM(%8C1WVF0KEE6S8,45;';GON/R/3V-YLQL]O\CYIJ@K%.BSA0_@QU^D
M,: ;EB,W(AVZLD,XG*%N[K:KA\,AR(0$&5=[<BO&WC8@57Y4M4>%,LRC:]GH
M;*03#48N9HM/Y-EMWR22BQWC_4@NAN1BHJP1Y4%)''E3-)551K%-7NN&2 ;-
M:<.H>M .5SQ94(+"<3L4S89XJA;4PH=<3%.Y<SN+A*$#;[(ZB\?2J ^N2HTQ
M-SN6*(ODJ=0A1G(QSOY[OFPJFNKV!I:L:;H@)UMX4G]HXY$WHC0%^'F,YL'=
MB"BA$%7NJ^<-)!6 Y'8R) UC0 [CCN<-20U62]ON2HGC8[$BD7N,D_E8B[J%
M6H6]@>V*$A&/?J!#FX8UT6)0Y<BM/C>B10RTE)I]-4%B4J-.&(IW= N*![@2
MDZXFW"RZ@NF-G1OH]$/RL78-M\JD+'5W-#8$8MH*$DQU#5!5C;R](0L*PLMF
M\V-D1)90R"HU"'?GC](TMS=PN^@X1G_?08S#!M#3E=Y 4T7Q-2-WF3BF5V-N
M%$V'<N:6;-B86(5XJVZ9<0 >I%EILJF*GU. P&O=<.. -QW.QRQN#I?C@!MF
M7;5L]G$ KL'8R\PCX-WK=O(5LI?MWZ#ESAZE\RM76&O:VM[5(_YV*AS 'W\6
MXJ_;^*M5N:+ T#THUY-N0T*>64 9+1#7TQ%[-T\1TQL6\&$1[1P!H@O8RZ"U
M,(Y!.&=^X*)/&C.<9?V_CZ$)^5BL4Z?E\V[ ,V91$L";SV,R8<&HK]1EL- N
MW96W0WF]Q;NGXS5/M]^RP412'=7#8$H2Z8;\DFZCJ1=2:*^A6E7*8*U!<Z""
M[O(P+/\<QXN&S+Q'<G8?$^_'F?= VWGN37YYSPG,X_*$T+'/'^X:+.!AO>.#
M Q/,N6[?4,VZ_'*NTW>5XJ^J,H%E'8.=VK+<K I5G$W#MJ_79&ZW?2%]2'5,
MW9 G3[I^2F-/^A!-_"WJ4G76@&47ZLN_KN^&?WR_'4J?_KS^*MW]^VYX_>U.
M^G)SU:_%:G.4 _FZY$C?B!_,I]M6'B8DY6O/391284\C( ?RP67BK] $25]
M=P13Z5,0>N$H -ZPE'[!5@_IW3STYGY KWN_HO:6^[+7UJ\J6YSTBL/V[OII
M%K,*Z5(02M0FF-/'^0G4X?XSA.G,)CF1?-":<2)+Y&E$H,MC+R8LD&M&XL5?
M4[JXIVO.F6K3D.M;;67YA]X+-DUL>6EIKK)MZW <DVS@DR(>Q.RB!1DBNX[^
M8JRMOR\3LV8;L9]KYE!N\;FV C9F_@WQ+]/%IT9OZSV60[_=N(=^:O8X65GU
MYN&.3(.W5IUU<V9CU6'FC&KUI9=_.7DB%9_,@(;>OWOI\?OSK08@<N=6>132
MU(K:*)Y;_6H=1.[<_7+G&K46[E-G-D7NW)H#AMRY-0?L$KESA9H/Y,Y%[MSM
MG1/U3*'>.:W1/N^:[O8&NB:;+J_06 $"PU!,NB0FFE+U[.T0\F(H4)Q3,9$Z
M%\5%4''16J7.-52L/5K%_8+BU@EQL]HWX0R-T;F;>L=JJPJ*>:3.Y;"UX4@.
M:.B,[-1JSAS-*7<4$]T/;?CS1)-!T22["H*I:V J,8OY,.<:W#,Q1 (05E$X
MB-'(4YU9U#:T9%L3I0I,M_WVGY$Y=V\F8Q-J/X-5V7+MQE6VCBHO&H'6S*S\
M_#97LP$%MDQ>]5814L<,J1+C<JON*K$F7:31Q8(.+5B@3=9:4X&UUCF"DC?=
M]E,BC>XQWH\TNDBC*\@:42$^B2=#H*GV!H[LZEVL37_*,*H3O\,53U![3U:;
M'PLAG@3#4VF "R<:75/'4!9NFZS.XK$T H2K4C.@$(BCB!)^>"J,&DBCR]F9
MSYD8T#0A+%=M;CP*>.IZRD"JX:PO0U0!:("<2$7FE:Y!ILP9SUOWV+V!*YM*
M%W4/1GP<QM_.&Y(.JSOO"J/<3L7!B$2YG S$MV@&ZPJ#"XX@S4''8K<P5-TV
MK,=9:2F]@27*!AO!<B"KL"9&X+#"YD56(!)(T"UX$(N/X_IF0?Z7K#C(LGM8
M-"#++G>KKP%_H*7W!H:-:3O=0DQU&Z\)= Q(DA!EJXS0.9#%UP0Q)D6,B0X_
M=/CM:/XUP9Y%%SJS<;DF01Q[F&7 SWIJ3L-G09Z4(3LJKZ"IX\@W0+PUL[TX
M ,^!/:Q:0'"#N#L]W)48;AS@YC*Z44L3GV[TB'U[)XC=$K.O.7)MA2I*7=8L
M\2F>NYU>A42Y^S=HN1.5VOR*$]::MK9W]8B_B@;NOO&G(?ZZC;^:1+D;ENY!
M:45MG:5(*9M6L$"THD?LW3Q%3&]8P(=%M'$$B"X@@SL-JC+3[NNV*QB5E].W
M7!/;=*1MLAO2^NY DU-W$YKKD_W4,Z#*=Q1,\B"4Z.&%(?'ZPY?AQTM@F 45
M*]T3JDC)8K>:>D\DV1NAD=MH=,4B(6+\GX4<;CA\%:+AMQ'@"<5]UW5F,^"F
M10:X2N-DX#@AGO:&IV[7OEVAZ,SMCYU@@E1%1\R=4LM7L.'^7_,5_)K%Z7F.
MJ&LO#FGODP_,DOT"<DZ2=.@]K812A?YR-%5]]X$)-:@49[-V877W@3@Y'2@M
MG9(64SAI@4A$V; W2R"CM*"TM"PM9;%KAY<6F^7D.]IF:BF*"XJ+X,<VAQ<7
MAX7HV:K1OKAT.Y+ITH=C)';>AA6B\7[N5:$KPW[I$#1_Q!E<#V>@8B;W\FJ2
MV7?,"JVZF$5) .\_C\F$U0>Z@#/A,[VO%IS:WGL)@2=0-?HBU>RLF9<SIDXH
M\%'%.S1R82PME\L8HK]/2,&ZF"E?XA<N@1"E[C;.]!+'9D3$%&WC.2+& >X-
MK%W3,<1LB5+E@QBU-] =7B16B!@Q$+,E#64'Q-3<M3FLZ+YC=8R*G+W7%G8'
M=T6261![?T]X'+]QBN<^*MFJYUETA/,M.GIO8,FNNFDKU@Y[%2E<^\1A)MR!
MC\.BJTVER?$HPDPTF+G"P<RD,*,XTU&==0AGKBX<SBQAU!G/^MCBVJDL%)WB
M)'C-\)&\T8CVB^XU8/8H@GP22^F82"3+KYZRE"#I71BE1'*V9UCC;I&C#W-+
MRE9QDM8MH1W]'_$_>T$($_P]_!@DLR@!F:LKD'9OH,N6@R[/;@&LS) ]',"<
M;>F!"+!C!EC50E7[!Y@+_&PFMSI6"# Q %8UJWGO ',5L338B3A8HW@6T8<0
M%@HP#[W))!IY8+1&&RSKZ'3=2ZF@JI6UKJ(D3>C.<.<*6RZ<B,EN)ZO[GC:$
MG(-!2(/ >-O :O3=@I"F* >#$#O1,?7-Z%>$T'%#J&IQT^80,E@$M=Z<I@B=
MG#70\"F*Z9\AM0='8R]\7-2&E!ZI\8_NRX.DD:Y*5#XA5_,X)N'H>1C39F5/
M7>S'LE.&H?=47\88[[2F"9"D@'#:5YYE S@5( 8.G0HL0\3+L>*EI(CH7M6/
MW1N8LJ%U(U^]LW#:AZ=QK[!BQR2VVY@2"YV,-5 "\P:GXSX4=6/E)M]F$L1M
M&/>TG5=ZII4I@)GY'H-,74XA6*%.R6?7Y5WR&;?R@BS\)89B+1"5:V5=@:,?
MH'[ L#BA,<31=N2GAW2%._4!8D@0/53*-<A9#VGBZ*'3<"DNXE_!.IQ$X>,9
M_7-*Y_P^18?BX8W#Q6SDCOF/=!H*Q03(%0ID! .!CAD;)39?56P XS1FW78,
M&Z5L0M6P8?8&NHG8Z!8V2FRTJMBP>@-+X47]AVZY6L87A/Y%Z9C$.8V"+(4D
M!<Z%>R_\(8W&7OR(T7^M)J@LIBKC%LIEZ28*7X(TBRG5=8717C>N68#[8K'V
MQ15MM=IH<7J#@J,1],$=*TXJVFVU<>+V!B8/)C($BB! J6C$U06*"IS.32)"
MQ'*F"6K';>/!HG^P:0[".:1QY),5A;N9<@TJ)N>L?3D/GTXGT(_FP.K'2 <;
M<$D*- FU*RUS&91.*)]*9!FKK)I7+[#^_H+J144%N&X(^*<*"EX41Q/:P,>%
M#GLM"OPIBF]A8NB7M8\*5!7BDQ2WR2+($0B"EDI'P3\UP>>ZBZDM\==/:>S1
M 0Q"+W[^DI+I%AU07]Q9WI.F-\Y[0IE'F>^:S'-E+Q%2^G66;Z3Q8&Q R4?)
M/TW)KQK_+93D&ZQ@GV5RH#9J2_*9\^/WU*.OXDGLH)4A1-O.ZZ#UG4JT#KQ:
MZU1H:PDSQDL5#&F>$#]SK4QG\S3[$BJ\K1&4PP/B51;S-))> ];H0R;;'#=>
M]L%D[B]>E;#SN)C\).$\J]6Q69\#@JBB>4P'C#Z=-87>\NKU87=!HV,RIM?3
MR5B\-,OC[*^1:5"\Y]XC=G_1)TN\)DMXA/UU\/"<:Z/!/^YC0.'RLY?NRV?
M )Z/3;1DE/?YUF+IKER(E-=;O'LZKO-T^RU+#<S(=*MKRV$PI:-[0WY)M]'4
M"RG(UO"E*I4 IFEK0[ST$UH*6B>P%.?AWGUXL&S/,113<S6B6ZZAV);EC<CH
MX3^J:?<6=XWC1?-GWB,YNX^)]^/,>Z"]._<FO[SG!!3 TB!,@W#1)-?HPYBO
M#Q=59: I7@>:J24Z.!-OEI#SQ2\7?I#,)M[S>1"R?K*;+J9>_$C?D,]. 74+
MFX3LZ_S-KMLW5!->GOMG\Q?G[>K3=OV^^;GK]%VE^"NEK_Y6Q>>;=8S1\"PI
MW-SAG'\;9Y.W[>LU95WLK"XS9.A#JB/QACQY$EOMI _1Q-^B[M1U?6<7KMY_
M7=\-__A^.Y0^_7G]5;K[]]WP^MN=].7FJK^RM'5R(%^7#.D;\8/Y=)L=U*_"
M7]0;W$0I51%4P5-[Q0=M[,-OKZJ>62#!5/I$312Z(@"?]$)+)]*[>>C-_8!>
M]WY%62[W9:^M7U71..D5A^W=]1-=3)/<'DC'T9P^SD]@V?TSA.G,)CFAAA[5
MFG$B0^D$ ET>PPH/ZS%=G1=_L9CUY/T.TY#K6VW%;EPR*D69)K:\M#17F9]N
M.(Y)-O!)\"1-Z5WC1"(AF%G_FH<DNTA79$E3-)-=M\)U_\HRMF)4+Z_C:S92
MOI-P+>?,7+5'\K42AM=<'<!5^ZG>6-V1:?#6RK!NJ&RL#,Q04:V^]/)O8=<&
M8;9Y@EZ]R_M(-=;YZNALZ;^MG!GU^W]84X0"I:]D^K".+6+:?4W7W[1%JG]N
MZF];-54;Y?0MU^34)MTQL$T';9/=T+;=<$%HIO9@^;L3:5:YWZU^?\&JD>W)
MZOBU\I5H'WZM;)G86!XDNC+L%#MQ8L-W5[2V;@Q>4Q!S<!3O-@85+8YAE%(S
M'QJ;N5_HYH"EN$V"GW1(/&HVIIE%.)E#?Z3[>4*?D23@H[FGVX3=0W4X2[OH
M< -;#<>ITC@9.$Z(I[WAJ42C+^ST, K)]F'!J[9==;11K!47S'_2W\_^ (?*
M/";@/H/CNT3ZFS>=74AWSPF<ZV%:>'6G7IVH#'N#*VWU4';!7@5'3=2@H1-T
MF1LVP^@KM6J^@E%SR6R:PG-4LS=P"B+!,?7SR''CZ/O%C=4;N"[BIGNXL3GB
MIFY0!R1%RKJ-;/*=@Y5;DO&V5UBQVI*&WC&&<''-1>+]?#[[.$^?I>_7WS ]
M?4^*NH088F>)>KNHFXK%)3N,J9(Z5 V-1@VR3FVDJ.D>;DIXCO:DBS0L,-E=
M3+DEK#5-=9'6&YA6XYW&J>?!5YSYK6R&Z#;<D_24%(YH*CTZ2P808CN%J#D8
M7^&^UG&#VSJ.F!(,4Z4$ADTUD0E1D0B;SL&&I_E70Q59HJDB/+MO\^R^_08>
M]U4XO&)%GAS944(6JKF<F\O[.*'LGB.OG5!QG*M73^ Y+-TP5?;L,[<A0(<7
MG[+H14Y04%%0]R:H)67-]AF"H+$0!,U".48Y1CG>+^G)7N7891%JS6EJ48Y1
MCD]=CGD>4=648QTB461%:>PX;EF.BZH=[%0,B@=&*A9;NB+)+(B]OT/B)8=$
M3%;B*QT3^O\W2TA(+]4C?GF)]/_JQ;?P7'(*T*CV!GK!'H]UIF9+>::+U!4J
M8.F4S8( +UF*Z:23$90.FSQ+[RI.E;'+5/&T\@OZJ-<]4MUO'H8.=1"5C0'?
M+(JX5D1NUP)QV6-OYE,J^Z--NVRI+OS=:$S\^81\?_A,HL?8FXU!@]UFA?*^
MO)8L&8+R&M*G?)A$HQ]+/:,326B'9]#$>$ZV%HUK39'E?<FJ GII&@?W\ZPP
M"E5DCTN=INA_9*H**BGZ4 T0]!6+@ '\1 _L[ZMH2MO_S$Z?[ NJY&B_(CK.
M67U > ?4-((\4]"-D@<EBB#MU'LD:X_X>[),+Y'7)J2:U -E.9E$OY+SK6A8
MK?YR+*5>=+?OZ+S*A? J]:)J?1<;==2-,HZPW(NF'D4F>\4-Q6]+Y55/JDI)
M\4:$&TJ:5;41:J2P*%## <2R0 <0N..H+U)QK+ 22XV1.O7:/HBI?6.JZ^DC
MU_,XFA',%6GNA@_GTWL2;T;;KGBIM'4GU544@@AD? 6W0?+CCQ?7@_KBE3K3
MEIPW5F\@1AF'PX_];XC3_>'4X(Q3B*YJ?)B+.$6<KN'4Y(Q3!_4IXG0/.+4X
MX]2E^E2(.CMMX[3KD?F72>!A:9_]":;-5S -A4>:)(]J!VT+)N*4*TX=SCA5
M@=<1<8HXY8Q3ES-.(=9IDW48<8HX;8135>&,4[TP/NP$<=IU'_DE"\GSL!#[
M'H53Y2R<1F^ SD>$*6^8:IQA:O8&C4T=A"G"= VFG,\<#3AS1)@B3#G#E/.1
MHV'W!CK"%$L#[?DJ'-[]#^]FYN5K<M1NN5*7DT5:T/<'5OPH2_W:EB1E.&\E
M2>V%R;I9SM1P3*0I\1B16/0@)3F%=9;K*9&?WF0.59ZD^^<LH>G[QV\L]2E/
M%<TN\Q(I)K,H3E^3J99+1$GWWL2C6EE*QH2D?6FX<B_D:BVJ#R]E1"U4$S>=
M6&DXJN9A;08C'CPSRW7[CJG73<RRE+[N\N+@UIUZ.4);,WOLOE62V=-*HPS7
M/KYTHTYE0JRH"JJ#<OW$-0\B&\6\;Z#( \>G;[]7;5U1[PW7LSR%_O"]!U/3
M+-WT1_]1SI0SE?Y/LRW5-GH##).N,IDK6?\X9%6&[",9$=@%2;J:9>"?E O]
M*_R>$5>]^R>9^&</47R6T!W<>][[Z\9[:J'&K7H1G*+NB;M?K56P6BTI/+%C
M40W#A7P/5;95(<(_^10Y1_AW#_XEU9QVA+\)A9H46W9<(7QF)U!R>6]DWQ@
M4BY$)>2[NPH1!-49LJKR*C\J0/E!A$P.F1+*GETAH_4&KJQH0H0,[Z)UCVSK
MP8$S%X_SRH6EI#K>KL("07::;&@=,M$1,AEDM!+ZJETA8X!^575'$,1TW:I]
M(:!$TW5/<E)2(G57.8'8,UVV72%B[=%TY0J9$HJW72%C]0:6*9N6*)#I2"0&
M=D.DJ[J^(=ID_LJ/90]]%/-F:7?E)*D,.(],1Y:S_2QF=F^@V9JLF+PB\#G-
MFJ G1RBM**U5I+6D*O^NTNI0:755V=(:I["W+ZT5(EP+N4:VDP= >",+>+(4
MY^'>?7BP;,\Q%%-S-:);KJ'8EN6-R.CA/ZH%/ LU* <6$_<I"+UP%'B3+V&2
MQG,(WDH^!LEH$L%Q5D$$K>EFT*!=(/YENO@0GKP96+L#IJ4[,@T^1!._:MRL
M71@HJMI]Z>7?2R>EX+67YS4C6(?!E"32#?DEW493+Z3-VZUE$A]B">[<#IP&
M_G6LZ2!YCX2%*\=!\H-;MUN)P<Z9(J2QETCD:<:D@_'O!/^=!WZ0/K,^RM(H
M)O2O_ ^J#>ES0FDTCV,2CK)K&#M% %%L)*$74DN=?;S&-[*N.?8)DY+[\K$P
M8%&A'6=<*^<QF7C 3O-*0_';:BQ]KH&5UUN\>ZILY^GV6XIBMO<FG,53K>EK
MT[#T<QPO&C*CN#Z[CXGWX\Q[H.T\]R:_O.<$%H'EB/0@7#S<-=B2O-[Q%D+2
M#=6L&Y+N.GU7:<;KD'4,[,'E13=W%^7?QMDT;/MZ;<'>S9U.'U(=4S?DR9.N
MG]+8D]Y2BTZ96F33_=?UW?"/[[=#Z=.?UU^ENW_?#:^_W4E?;J[ZM2)&CW(@
ME]:8;U0[SJ<-[=:;*"6,_.PJ"GT2 D70U;+?XPOHCF"ZM.S?I?0+MNI+[^:A
M-Z<JFOCO5]3><E_VVOI598N37G'8WET_ 9T33'8 *4S1G#[.3R IZL\0IC.;
MY(3:^U1KQAD/'H$NCUD*$UUT9R1>_#6E6X<T>;_#-.3Z5EO9.RQM+$29IAVM
M;RYSE6W=AF^3UF47O9 ,PG4K ?39ROLR,6L;J\5.9WDWM;1'@>U(T2Y%VP<K
MVGZW+$L;,^G=2Y_>;\^$Z\0VXNN*72WJGJG9OF*MCT'",C/9[^F8CN020YWT
M*YA,I#!*I7LJ4CEEWI205 HH+!Y>P!+=TR[E/)\>>]XSR^#TYZ2_D,K5S8PG
MC8,DC>)GT*0159'T[O!1HOO_A&1,>B%Y9*:^-/*2L?0 R9_20QQ-%U?3=_6E
MR[1 J.65+HR]FN2<)1[B*]H<^/\U'<6?W@0$Y#+T[\91G Y)//T2_J0;+"8W
MM?U2EM(;6+)2<"(*H\3& 4:&_4)>7R_3I6G!O<JSI[>T(W072!<YZ"_MY%JW
M"[L '*GN9GT/6#WCE^>Q+AR2ZC*)TW,6(TV;,_<FWU_P^BF /OR;>/$W+YW'
M5"H62=[;<KDM373"2Y"U+%T:$,'2LK/4ZT7WI6G6UX P0V:K''M%TG6^72NV
M3$JY6^JSKO=-U^5&:JAQR3)V^K8B6IM4I6^;HC5*Q('"-E5NDVH<7R;],7#I
M50NV].+XF3:3+:K9WE30]&N1!NUU&67C!I9,MD ^+-<GP0'<NDN?I!?9@*G9
M?YZI\87#5C9LZIG^.EP(L]+Q,LY,'*\Z8OF87FP=L:.-8JQ6DGDT8GY9:>8]
MLPT+;+*]T8AN[GQI$GCWP83ME4ZTND0WD^OW$"=?$JQ4Z'^H[R.")#9;-IMG
M6HB3Q(:"T"U!,(H%@=50+)2"Y)90W<N<IBR@O+Y4&"@5*!5B2\4NR\/'.?D2
MWM"G#'^1R4_RC9UFUI<.$Z4#I:.CTG%'Z*/\R] ?CH/8AY.<5?EX")Z(?_8_
M$D>%HF%!W("CJ=H%R@;*1L=DXU,TCU,XN?T4/*3CVK)AHVR@;'13-BXA@'HW
MJ7!$DXJ.I$KC57M.+1>E%DRUQ'(23Z5)1%_YX(W  ?LLO0NCE$BJMEN9WXY5
M^MB#*BVIC,O)?^GV!H;L.%CCL&OPV5)9=H]>/UOI#4S94H0@HD8LM:R*^/C*
M;!7TDVF+4E$3,=4ZILH\3%50!3SD,N.W0%0AJIK[9FR=VRX4(=4-2.WNT@"N
M(K' A"Z-D[P*I_TDK\)I/\FK<-I/\BJ<]I.\JMLQY-]?4]B)EY"53-K\W$+E
M3D]8:;\D&/G#'O9+)6Q,?,XM;(BADUVKL0='G% (A ^#SQ9FIGV>6UB]@28[
MMH)8ZAB6=E%%6\XM"F!C]P:ZWOA@ D'3%=#P.)AP8%G3%%%H.Q%5K:.J[&"B
M"JI<=MPE#&T6HJIE5*V?36Q"Q@$&860//LB4%X]IT].[LGO>K)$O/N$#YXAL
MGH/2"=5RB$V\HU(E8\B&P2MBC,?TM738CN**XKJ[N&ZAD=RCT\31J.Q"=4Q>
M,50HNRB[)RF[NRRU?()K'9W*L":;"J_H6I1AE&&4X0/[#!T#CB\TK;%W!X48
MA1B%N!T7K6-R<M&B$*,0HQ#OPR-N<?&(MRR?N]*3+CI4FVFE*G.IM<Q<NHW/
M1VN;4/23%\323V\R)ZM,#4N,HITDJ;G<PCXA;Z=!84P74^(!1Z8/=S\LC5TH
M>5),@!$38O3NO23(6&;@GHP])6/X^DI^DHFD<N(F$6Q0@1ADE!=]7Y"1T5&9
M17&ZX#<CT@M1'>BYG.=NM,QS%^0\=_?>A(*12,F8$& #BF(HFKMXZ(C0>:%"
M+R^JZ58JL2MYLUD</5%MFC+6$CJ!K[.8 )\0,!!!,Q,@W#E+H4K$C#8G\ADU
M4<[A K)"+TK(LIQT=TXG4?B8#47PRCX$$QO3(0A7&)W^GKR0P,)OTA5)9D'L
M9>RPR6*>Z*3 =,X3  K<#6)&AW5*TG'D[S"0!QR0M>51Q":NR&$.[74QK"]\
MRR''=/TG\3*O%@0E)[+T:QR,QDSI415('S>?4<WH!\EBUE^YMN2W1;&[PK0Z
M,;DFD=+-<C3+R\:K!/KD/GVM5 ,R!0\,LA6)ZEQJ)OV/36J2ODS'TD S7K77
M=6L;"5-WAW]!VS:BH_$8Q?3N9'U0\C4^TW* ?+I:39-:2S\5(UA&@"ER\2+"
M**\RWJQD.\UARQQ7='_25[(]2AV2*ZNOFQ8GTA[3J$<DM/5):M]VS4;\/U6X
M3]ODH-U9'&J&Z71[''*;7&(IZBJW >%-BINK32&&[,_0\Z$]5!O^=Q[!?V9T
MJTV8R0=NA)]4BWKQCX7I$%!3@[69JL $/J2?+5GE_,G"CQ>,*)3[& >!><2Y
M#Q/*#\K/8E'3<%&K/F3?[^F-S*E$E['9')8INC6+@;7ZQ7&7KW.RE,QA9Y6L
M+7^PV"4!;987%R]U%YOKY6*A9.38L'4&/NQL$;V N[-&Y"UZN2AZ;2R]9D1;
M> ^;^CB.Z%2PK?S]\_)%V5LDNLOWLE;.[Y/4HZNR-YD\LRWHPWPRR?:A^9X4
MUVK4-;A6"[!6YQOXK4."N#KM<<K6)KW^6M]LP+IL"WS)EEM8*5^6PN65\'EU
MN<Z\W5&X;<5]-P^C=>OB?<%2NGJ0O=O)<.>/-_X:DU#R?GK4RF('@$O'3](\
M(2\V63X!N:651I)/P+RASUMQ@<-1[X1.,.U+9M5E[MZEP]IL3"3VWI#0AR5>
M_"Q+"Q,;GI.?BP >9B2&6"FPP!:H*&S0LJVX=(Q8X$*A3?R=7CR-?#+)99P*
M&+W"7W[WKR =OV4F;CQWT:^%^ECK!SOC2;T?M-/YF9%''P:'0M0^C E( GWJ
MPBZF[5N,1Q!FL6+T26OG"&]&8N1S;("?>A8E 5QP3M_C,4OXQ3W]6V_EKER%
M*:^WT%9&DWFZ_98E#(\(G'=5A_ PF-*9NR&_I-MHZH44Q[M!6#/6!F;YYWWD
M/]/_C-/I9/!_4$L#!!0    ( "J*05O2D-8$(Q(  !?8   1    =W!R="TR
M,#(U,#8S,"YX<V3M75MSV[@5?M]?@>JEZ<PJOB=KSSH=6;:S[CBQQ_9>^M2!
M2$A"0Q$J -I6?WUQ0%*B!)(@*+KAFLZ#(Y$XU^_@=G#1SW]_G@7HD7!!67C:
MVWN_VT,D])A/P\EI[]>'R_Y/O;]_^N&'G__2[_]Q=G>-SID7S4@HT9 3+(F/
MGJB<(CDEZ'?&O]%'C&X#+,>,S_K]3YILR.8+3B=3B?9W]X_28NE;?H+]_>./
M'XZ.^^/]XP_]0SP:]4<'WD_]P_'^_KX_.ACC7>_'R<G1R#\XW/VXVQ]_/#[L
M'^[N^WU\^.&G_L$A.?IPA,>[ZJ]F^BQ.A#<E,XR4::$X>1:GO:F4\Y.=G:>G
MI_=/!^\9G^SL[^[N[?SQY?I>%^TE90,:?ELK_3SB05K^8 =>C[ @:?&G.9?K
MS(F0<\;E>X_-=L#<W0\'NVEIX$5+N--02!QZ2^Z^Y'VYF!.13Z->[\!KD'/8
MW]WK'^QE)?DKS;)BCG;BESV$I>1T%$ERJ< Z)V,<!8HD"O\3X8".*?%5) 0$
ML%XKD'DM,9\0^17/B)ACCU3PQ*<?$ * Z S>H= @'6,QTJH*+C59#\5@7C,/
M2QVC4%*D5AGE=T@@!7SKP[?WS\+O[527&HG^!..YD^0L32P]>>*B05DTY*F1
M2P+?^BE='Q[U]_956-36817O;CJD=%OJD!OA1:#8*/5W45&-_!I3T0DI 5A?
M%7]-+XCW?L(>=[R(<]4(+ZJ$82[-\IM+"*ZQ\PEUD9X6AP\Y,G$8,JGIX4GR
M;#ZGX9C%#]0CB)F3-'#NR#AMRHPF.6G ]XZ/CW?T6]7J:6+,/<X"4EYX9\[9
MG'!)B<@VYYK!E)/Q:0\:]7[:8OUKSLE[I4E:Q!"P'OWP6DD@0K6:VM[KE4$I
M"XC#TYY0. 0D=E&;[??)V-5^14)#^BJL#_#(U7I%0H(_O>$>#EP-5R1>%-2)
M>B!_4.\1]4][0Z9&H[=XHM2#Y[_>716/*[3<%4'*->6["L1/N_K?'NJO!K!]
MI"D1D/Z\LTFPP2H2Q+\)/^G/F_4[(4Z*E!!N>*@RW7J%RB5+'J:>+/5OZ)-0
M$:L/@@74AU'\52@)I[,S',#0X7Y*B!11B".?2ACH507"F7,)8L?'1_M[1X#8
MO7(U64*6R$!9(2B1@A(Q*):#WBTE_>T-X1(<;K$:+:@YG*3*@)>#>UV,%?O]
MIK!'[]8DO\5"[+&E;P4;WZC.0:LJ<*C*SI354T5''\E5J! GUTPTVR#4%VZ-
MFP.WN%EI@M@8K71!2AFTI@V*U4'O0*&_O;4NI:#>3U6=F[+ )UQ<_">B<O%B
M\5,FRAHMA]M$2U;R7U$L^RTN2L$:8C&]#-C3RS4G.1*L47"T312 0*0E=A;[
MV1R'"S4?P"']KU9&-9YLV9161]C"QXKC!QCA4^$%3$2<:" U2Y3EJ5OV%=<.
M 75-51.EPG.A//"9T7"BHMLC/*P*4"&]%9B/F\ L66DT-#.4<.L0(&=84-5D
M*2/F. ['JE#D4%I!^&D3!,T$FK ,FPYY_RMYPI['HE"JZ)MS%JJ/7MRN5X6A
MC(45C^--/!0WM&*'UOEU")A?2."/&1<X(#X5<Z8^3#B+5$ONJ^\> _=$I$8/
MX\[8!N*'W4T0049?">F#%)2*05J.;NRRDKK9#PWB&!><>(0^XE%0.=N70VE%
M:&\3H90)6G'ID/.OPD>E/..45*XV61*KN_<WW9VA[I";KUDX4;.%&576"^G4
MJ>216MU^8(RP%)<^L$$9/AT"X#9>\EC, ZQL4/,Y->"<@Q.JPE#,P K&X288
M*:\?D>:F^X$EOPZ!DC:]<[R 9E>Y08UWN.H( XI'-*#2H56JQ,L*U5%A[Y#P
MU5@EG%&&=8=02[*BX41Y61"AMW.QL>*&A2 2TK;Z10T,:W"V(FHD 99"4"P%
M:3%]-NXK02B6I%'6KSN*<=KI^&14N85<H['B8N8 ECT4,.B0KW7>V,-S*G$@
M)/.^L7FZ_L'DE'#]#%;0?>@M*E<F5[96Q(R$@9: $A$_(LT0)5+BM!K(B9_W
MM23=WW6I'MV1 '+%<ZQZ>\F5[=ASFJ(6TEO1,M()"2ND>:$LLP[A,62S&8T'
MORI XXGWA(2>0R=5QL*&RD<C/Y#AIJO,&K\. 7-/)N $V 7(9TZYSQQ**PQ&
M$B!A@C)<.N3\2QIB%7 X@/W"/'*:GN;26@$PT@)+-BC#IT,0F!G\6Q90EW:I
MA$,Y'$='>T9]R%L+0.]2AEU:SC3=^@#SP"U@2>BMH!AU)!^4F%V7(''.V[LA
M5I>]%5 C*5=W<:"+H)NY?C=4"^FML!GINYP5@RXBDLGDNT%A$EHQ,/)R&1Y=
M]'W.HH ;!L4,K%@8&;7<M84NHE*X1N"&C8V-%2$CMU:ZX-!%I*JL%M3K7RIP
MM.)G9-JJKD)T$4KW10,W8&OSM\)LI.CJ+TUT$?CL>D.]SB]#:0-KW\C<K:]7
M=!$ QQ4&-XSJ,;?":&;^:BYB=!'PHM4(-V0M7*P0&GF1XI6-+H)DYL,=*UX1
MO148([^1DU7O(B)Y*7(W3$HX6%$QTA>YJ?8NXF([87).)*9!8P=64G96Q(QD
M1X5S*^A=PKY+ !:=0'$$SL;&"IB9$2D^S]))H,Q%$$>(BAE8P3&2(?G+*!U$
MQ7FAXROF\.F1.**WO2 KRD;*I/;:2A\MI;]%116P!FD>Y'J5CV!C-6LZSQ2_
MJ=NK_K_4L4:8D:W9(L(&JU1.1DMHD^#RQ*RBV3L(WJ*Q OQWY)&H)^K]Q?,<
M3FU_SUBLI8PM$@\:.V2FY\Y:0UTJU?$M#LTX-)>/X;)0/PH(&Z?O[I;O'..J
M'G-KG%0YZ@:S]$06P+XL<9=9VGZ#6[FA[MBG B<KD$;&*Q_(;H];,CL"5K4G
M\] 1MZKLK. 96;'LUH7UVK>VJ:';$-:M;F4LK% 9J;)UJ+I=OW)VC*Q7C.2A
M:_+%D:T51"-[EK\]Q:QYRXTK;^""'^K6P"JLK"!6W&/T5B<-7V=O6]P>N3QN
M5O!*CO:M@[=V2^,;@+%?XGL%EY>*;8]A 4,KC$9*K0C&Y";$U95I742R<-.>
M(X!6/E;<C$259?=?!\&JLEFOYCRO"DL;A(=&AJ?Z!L .HNF^0Z_NV*8!25;L
MC:S-%KL"NSX^<L<+EMI9&-\=>@WOADRX-N$-2[5&C)$>VBIB5KK Q$AK@T"=
MMP"J!.47+".>+#IIYUW7[E)>1K@UG(R$U5;AM%)I%4[7'>^PUO8?J_^O&0XO
ML5<O2JHQLZ)NY+XV]C?W$3!'P!VMV'<>OFVS)+D\K&"5Y+@2L+K=[V>]N\HF
M9EK'\)Z$E/%D*V0XV0(])_Y69$L27PFRV;1EMG$-42P3+85V$GK'<P-UZ^^V
M8JR!8"31:A]4Z'ICX B5+AXIZ:X=\=9RK#'1V U<2U(M_RTJ[&@-)A-.)E@2
M&DI.0T&]1QQ$SH.UAJ5:(\;(!6X1,4MET%(;%*OS%D 5JOORJPH&V&=59QMT
MHS)MP7-D9"&W:6XRS[+*=#)TBD[ .4:#C8T58"/56':2KH,XF4?A:@\7[9RL
M:!EIOKSC=9T?[!F.SIR=6SX;+4:1H"$10L3EMX;328H5ZDHG*==/\JV>CQ8H
ME8L2P5T.A:N5:^Z(QT)(7>EO;)R4N#B[>C@?2 :_Y#<BJK0:;L&*ML3/[@.\
M1H5: \7(VJ6!<K46*.LZZ!^K2\K%:B#)$"B"8DU0K K2NG0Y=C+5*CZRL74[
ML<[&BJ^1Z,MO")+S)&]( =-;PCW8M3GF\=F&T6)"V(3C^11^\#5(?KQ^:R3=
MQ%B1-A)_^4@G4J$*)W*AO<]*1JGH+H=#IOE[8&JRHA>IM@6_(E,KU&9J+[?1
MUC+BY36TDM))5//N/Z@[%*_$RXJAD8K+OU6AZ\/Q/&<OG]V, CI9/_NV!89E
M;*UP&GFR(CA7SS-B7CNT/^\\BQ,\GT-7!$_B[V'(8MWU(_6$!/'V3P#^:<[E
MOVX@'13_$/+5THL]A$?J,_;D:6^, T%Z*,0S<MHK*!W2(( M;Z<]]4@5?A[Q
M@)[,":?,!Q5/>X 0AJ+QJU&\J_BTYW'B4_581$H@E1'H^AG.1)[VXI)4DED/
M2<TD?C)CH4*2+Z[4&V#>VRDT+M;TGGC)"IQ6_R8D7\AL1'C6RECOV$@;E=U:
M/TI_&[227;[D??@D3GPVPS2L8-DM9QXAOKCD;#9D04!T"NAF_ L+_!'VOMUE
M?JBO $L7%BXF;R#LD]'+ 7P5J@#"0O4)\?]7X>_0EH=RD>Y?613:7XFVK88O
MV[A5-12KQG&06%P4X56I&X_T^(F I8E)!2OAT/0EX_<X@//8^L2T9CT(_?SS
MV?KV^T7\]X$\RS,U)/M6& %-L7_!!D&F4BIX*]UU<#.^A%3%)!Q&G)/06UP\
M>U,<3L@=EN0!$L9QOZ1OD[)[:5NVK?..7B(Y@V6.86:58P!U?Z*)SA:K(K=X
M 8\&3YC#;]?':VJ_P9*:L_M>2&[K_/LY,]--[BZXVKBISL5M;NQ:YXW!<EIX
M,];3Q3@1Y.R&BGQ:8O^0B#GE^!^,AO(W]49U*^6#KA*"-HRWKF$[[7DD%^56
M&,7:H/LY&<E51S]DJ@JI4<X7-<V81;,A%M,[.&G$2>G(WXU)_0G!BXZ:"KNR
MA\V1<A94&U4#&/OR9*I*<B\:D:OZXZ5"3=5<4O,5SC9F*+_W:'#PJ,9A$U)M
M%+)7&,FN;%[([+EJX:I4WNS 5$U9@LB'O:IYP].![^O$@7A@L"/UFCX2/^XD
MBFMU,]S;.DMR,&^H+*-^\@4F!E?AA? X>VK"=R7,6]I2.AAW@7G((BF^X&?H
M"YKPE\'R-0?8UPB&"FI0IUH=U0HW4ED=A#D$H(,/U2B.3 AOUH69&T"^LM#3
M+7?)B&5KQG_^NKD\%J8/==W!Z/1F_*L@NN%NUH>51?WYO0K3\+A/5'.R)]"M
M"0?F<6UK8KUV7"Q3J\.7BCQ3PBMP(HRXX&P?S,(:]%PNVU?@KEO._,B3:3Y_
M )<PX*!!QUD$O (7%E2JE^PS<H6\ E=F:UFS_BOB_ J<EE_#FG6?7<8K<.2R
MCJ57!]L6!YOA_;V310Y6W!%!,/>FL.Q''DG ]*5+B4E-Q)E%P"N8W-Z3(%#O
ME(%?,/]&,B'1A/_*N+\"YR69R#0#^1G3$#9Z-^&Y0M9;N*TU+5M\IQW8 UM8
MXET[7XB<,C\SGV\F/5!)T*OPZ6R.*0?RF_$+))%+V;^"JGP52L)51*BF2N\:
MBR.GP:;0(J"U(?C L4_,>_(+75)8OJ79(W/3G/A*K%-U"U5+;1U&LYD2_'NR
MY5>%H&5IO[!\&U;'4PQ@'F4%*B[T0F/;E*CZ]HHA#K&/KV\K;:W8+-P&YR>J
MW3\1GX2#LTIV;!9N@QV9?=%)HT5@9V$\/"!$E!M6E;H-EL+6M4C&ZNIIC.J)
M[ME8/F'K#I\*E&VP\)JH\0@I2$T]L#-RBZD_&"M+_JEF=9<LXH7-1AU6;4TY
M7)P/X6(YR];Y]4)M@%-OJ?P5[M I5]TLUP;M;PG76QWA@G>XGJ."(:4D;;#I
MG(R)&N'X59$I+M\&:\PMNZL-O<FX_)Y(&1 U6=1EBR=2=5BU==+D8@ML'VS$
M*3&C]KO$<?_WYH&K^$32PQ2'-_'%/C>1A"[!CY-D%\^$>U3HW[&*-BM6@6__
M[QJ]S+83H6O%2V+QE24FFBY8F?P[@>T/Q$^V&GZ&Y85S+,DEIESOX6\>D:;T
M:AJ758NJ>&C5OP\ZVE;BMPJ9ZCJ]8$?W?6%)6H:6 >.BU:N%1LU QX3"00RA
MFW"8>^NVO550;:/EJX6NL/=M%73;:-F*;BI)2%7*6K5JRH(#(F[&GQGSQ3WA
MC]33E2>SH&"9*E>F;X.UZ0]$+FXC[DTA/#=U3G<OE%OMSJ<-UO^BJM*M:ASA
M8/>0A9*S0-PO!)SH*3>W F$K["/X<0$G[FXNOE@,RBG9!@M*=X<,_']'\0*S
MZNCN6*1;R\)&N@ZKULZ6DSOX, ^5GN),WWJ7+G\^X.=S,N?$BV_+4_8.9HQ+
M^M]$T:).;!N>K5U;S6JM/@<D1_T8?.*7G.]T8=+6H%G?J3&,E\\5U*LK'%+,
MH=P#W)T(V_WBY@WV&"W7UYWJW4N+;6WHZ8Y!^2-:N]()B ;/M/"PJ8VJF0.U
M/E6ZBF0]M>8NPF)-SW7S[FYA2M>&GF=]8:K:**B<I@U6Y?O^CLSC28G0ER<4
M5N6*U-^_1NH+OH0W)3/\Z8?_ 5!+ P04    "  JBD%;J94"@4PO  #2[P$
M%0   '=P<G0M,C R-3 V,S!?8V%L+GAM;.U]:Y.;M['F]_P*K??K(L;]DDIR
MRI;MQ%6RI9*<D[.?6 V@(7'-(75(CB[[Z[?!&8ZHN9-LDN\DFTCC&0[%]P'Z
M05^ 1O>?_^/3V>39!YPOQK/I7[Y1?Y3?/,-IF=7Q].U?OOG';S^)^,U__/4/
M?_CS_Q#BO[Y__>+9#[-R?H;3Y;/G<X0EUF<?Q\MWSY;O\-D_9_/?QQ_@V:L)
M+-ML?B;$7U?_[/GL_>?Y^.V[Y3,MM5N_;?W;^9^@ZA2\2Z+IY(6%G$4V)0K;
MM-8UFP:R_*^W?W*Y&BN#%"TD*ZS458#U41B+SCMHDKZN/G0RGO[^I_XEPP*?
MT?"FB]6/?_GFW7+Y_D_??OOQX\<_?LKSR1]G\[??:BG-M^MW?W/Y]D\WWO_1
MK-ZM4DK?KGY[]=;%^+8WTL>J;__KEQ=ORCL\ S&>+I8P+?T!B_&?%JL77\P*
M+%>S_B"N9W>^H_\DUF\3_26AM##JCY\6]9N__N'9LXOIF,\F^!K;L_[??[S^
M^6O$N%B^G\V7?RRSLV_[&[Y]/IM6G"ZPTC>+V61<NZ!_GBYQ/C[['B9](&_>
M(2X7YU,XKV/Z)8UK]9SEY_?XEV\6X[/W$UR_]FZ.[2_??'P_7XI. .F-[.C^
MYPY/^?;+B I,ROED-8$OZ.?+9W7X!QX<?EHB?<+%[*[13&;EJS=-NFQG\_6_
MG$#&R>K5T?E"O 5X/WHQACR>C)=C7#P_G\]I18V<BZ9:9P5XDX0UL8G<4 L9
MZ7\>E2TZ?SVI?: +&NF*$PT6>46,RT=\VV?[6YPL%^M75O._FON[45S,\>[C
M^JZ4V?ETN7@%GR%/\+MII5?FYUAO&;"T"HKU24CO4=@0@LC1%A&L@6"=<:%9
MY@%O >_KF=C@VW?S\FPVKS@G??G-LX_8==NEZKS "O-R@XA?+]O+=WR[.#\[
M6WVF(**=K?]]F\_.6-FRG!U'2!<DH<'MRZ*7[W%.\S)]^P))KZU1?5YC,H6,
M021%IQ&JL"IID;+QHF(NIDC;7);,Q+D?T6.XHI\F5QA%P4:/%[/IV]]P?O8#
MYB61]SF\'R]AL@+X,D_&;U?3=#5Z!$BAHA):&Q#6T3SDG&GT68)2R4EG*[=>
MW0;@8\ACGB9Y#B<H-BZ]FL_J>5G^$^9SF"X_KQ0A3)Y/8+$8MS&Y"9?@6H52
M;4K"1"#G-)$3FB&3$ZJC G)80ZR!F46/A/88_MBGR9]#"(=/"WT9Z\OVPWCQ
M?K: R=_FL_/W/T_+Y+R'4/1JF4U)>Y)MO52DL^G5Q"3CBZ4XQ@10%/C$(&*L
M4J3:C#0^9P/N</[>+I ?PS3W-)EV3&&R,?"[Q8("E2_J,^3:'YRBH0@Y1Q0@
M:1&@#$;F7%25FMN=W@2P[VB>P^)=__OC?Y^//\"$/G'QFL*W^;A0$-9_01;D
MZQ<VWCER -@\+?Q6)?FINCE:_;D(]"&ZZ&UQH3"/?B_ 0PHO=N?1]65T/!GR
M+:++8.@U%B0D% _]BLOU7"15#=KDA+:-#(L.9%A<*\*@+$J[ZISA]AWOPS.D
M.(./-&P28./$S],/].S9_#,!&1GGO%2.!N0SJ?9"0XN9-+UJ&%-2D1Q5;CN]
M^?PAA0=\,M]YAAD=?WP/X_KCI_=].W ]INJ-4REED5S5PDHT(EOE15;%F%P<
MEL9M1&\%,B2GGD_J^\\YL^^TDZ]'N"+%I$4XT$37:+4@5X_,E$)G36[!YG80
M1^NI^^R,)N,XTCM$K#CR6EM5R(3IU#(!B$I BY7,FI*UJM":,8>+^QA'<A5]
M.^-EC5XT)XVP%(+1C$(0P2I+>AU+K?[(!Q>#V:[?2MKW!*6[S/6AM^-_G4W+
M)2Q:R5IBJR))*\F":XI\*> 6:)52#62JEELE/@AJ2,XR%R-X)7'D#?F1:JYX
MGZJPD!J1ES1^DEWU.NL 8_6QQI/LQ _)QV93'OPRX5,HRW<XWQCH!G^S=Y ]
M1?YH+0U9UB!R*%: ICE0+CLG%;<FN1/-D+QP-A7",_<GWT;?P-TL2E-I)GRN
MA!LU>9*F65%3;BJZ5(M, ]E)WXY;)]A,YW)8CB%+-@Z^6<[*[^]F$YKT1=^0
M7'X>.4@I%*E$:9EP-!E$3#U8H760M#0R ?=&P$T4>V^IS\[.9M/5Y_XG3,YQ
M5 I$::T1$8&T?:90.X%MPECCH&^PYLR]4JYC&)*COJ?<;^Q^[S/=>Y.YI]A=
M:/>+H?P\72SGJV3-48$$R=4D?/1%6.]SS])((FE=R=KKZ.VUA)F;^7IW?_R0
M'&TFB3+-)=]N5:WC/GJ8O()Q_7EZZ<UM$&YDHE(N*2]\R[(G:C61?&VB5F)9
M\)A2XG:<'D8U),>:>;$SBX2-*J]Q">,IUA]A/B5[N_BNE/.S/NM8?\ V+N/E
MR!LRY<TG48)WY//K)**O442% :4*M.:YJ?(PJB'YVLQ4818)Y]'G&L=*UQ%W
MW\_Q'4X7XP]('MOL#%_,%HM?<?FR_0:?1AZB=MEDT:I2Q&=+((OS0F83>KZ?
M"YE[YW)+B$-RJKGUS0&%Q7RJ,C+6DQL?G? J1F$=6)%E(">^5?H%ZAH">V;W
MZLF\&34R5FT+>A$B(BU* R*CI>6I0I#964>3>KR,FB'DB&PEV=L/;7:97/:-
MRG[\O%B>K;).$-#0TX.0L0>\M:+(5D>!J@!0[)EK8+]W<1/&D)QH!EGO.]&<
M^;WO<;[\_&H"T[X/VC7Q^XZG)QZD$BSH1E&9=*0C3>@ZLC6AB[,UM^0#^\G5
M?7B&Y"TS<(!MZ@]TD/6Z3^/+]H\%K@8[,C5 KEX+IZ%K)%0B.7+$DD=RUK4+
M&."@AUC7  W)(V:@ ]_D\YY#7 QM<QL\FZJ:52)4K0E*\R+&GIT0<O8E!-T4
M=RKIK4"&Y,QRR'_OR6:3^Q9;TS< 2X0DD\QDNTA[6=6D *L)=;%2*]6T5=SN
MPAYP'\,A_W0X="S!'>)TBRS@+2&A42:B;E4$;,1_%XV F.E'9U5T8% !M[)Y
M"!-GLA,:\O-"LS0R;((DG\C+UU88%5..-B1,![S4/*0 BI4)]QR\;37EASQ!
MR]YK7U06!F,0-GDI<BU)F$8:OY"BUXH[=_XA+@\F"8B? 7L*@(T(??][?!'P
M]:R3E5I^B]/2F9EJP>2 5*YQ!"AH)\"5UC6_BL&;H-@O_-\#9TC1UD&IP262
M:QSY\[?7)^X%_7R(HB-OEO3#"O^L7=GW!?2QW+H'>K"Z)+L#.73I$J8I8JIN
M\N4Y/Q'5+QAW3J3[@NQ[;+/Y)9[?X!,N?ORTG .MNO$4YI]_IK&L7#?ZES1T
M>LS;U3AI2D8E&Z=UM**A)<86!1?<A68#5HH84''OV1QP.&P[&E\PTIINU=+"
M%3+W4P;00*&T*P)#DSI4!4FQI]#=A#$DWVLH?+QS2V1'Z3%>>-N<H N;\PLN
MW\WJY@:NE/UN1E0B%TE&*#HO$OHJ4K;)-;(;NG [\X\"-B0G;ZA4XY<PWVX,
MEBN#1A/T-QA/7\X[TN_.^KW0$3H)V>8F4-(ZH. ]T+ C".-JSI*BG."XC^$>
M@#0DUW&HA..4*J.>NQC9Y0W$GAL_\L1R4PKTBV>>.-^BB%"T4,&A:F!LR\BN
MU6[ V'*S7_Q;<FI?\;'SZ&("+N'0@&=K@]Z/N&R3:I7C8;TC2ZZ!!JFR$DFF
M2L:<?H7\GNK#N(9TK#!THK')EW%_9;$*XR\Q+48V5"^K+0*T)Y.=6Q-1D\GN
MUP)E4REBXKY4=1W#_BF+"Z2IZ<5!?L /.)FM3HDO/WU497-!>R]\J-!3XZ2(
MRC61(6F9@ZPI<==?N!?0D *;O=AP,TV12PQL;/\;3FG!37J%RGHVGHX7R[[\
M/JQ7Y(A\U>*2!.%ED[0$51;9(SD1-B4#UBMKN;GQ *0AQ2*L[. 4!=^Q ZYT
M/H'Z!>:_8]?,:SS86DW:@@C-1?(+DA+0X^CL:W&H<Z\]P'W\<">:(04,K*Q@
M$@ ;(7XB9V'\]K+80_G\VQRF"RCK *0[&A<.1<^0U5@@9^6$#MF2$8]-0.EU
M1Z2"D#5T \[,D"W@#2H@8.7,H63$N"'Q?HYE?#';9[/Y<OQ_+[Z_*)2,JRN+
MY  JAY7<2"M"*J$78^BW)"L*78PW?:\D&NXZQ(^$-B0?GY4[AQ -;SK9 WGY
MKSIFPKM<SL?Y?-FKG?TV>P47123!:T-QJ[ !>B@K4<3FE= .M,NZELB>++$G
MY+VCF8LK#?38E1:XY&C]/^<7&Y)7"' ^[AN5)&#H8?_%?T?D8SBG0Q'5JNZ2
M%BMB<DE@KI&(!%97[H3-O0 /*7(X)E=O'$@?3>I\2[N,;]\S_ZXM<=XME;5>
MYX1%6*?IBW5&9!UZ@Y+LLXNVWP'D7KP/@1I2,')*PO%*CR^ZG=/87\UGK5\
M#*U@"%KD6)JPV//A#?T8L 2RB<4ZRQVN;#Q^_QV<#S@]Q_4FWIS<N7^.E^^>
MTXHF$<]__'29J=F3,NE/75U0DU'&7M\AMD#K6/HB8JA6)))%K5Y#C=R9CSO
M')+.WI4O-S=Z#BLMULW.E^UOLUE=I47A_,.XX.+-;%)'T9 &,-4)J*X'!A1=
M)I\<!09&D5MIE0;NBF-WH]E2SQXV5N-B"=/D\U_>V4B6:%YJ&1!$J*5WIZE-
M))12I%PU@+>ML%<4>S#593\[($TK14DO@NTU WRB@!=B$CZ D[Y&E0QWW9D[
M[<")/=0]Y7UC W/'63[<T4U%W6)/S<XE]5(BUO36=U8X*5TM(5<#[/'+O4<W
M)]9<W!+?:\(/E%MUVQGG2&+,45%(HWJ2MC4ZD\*.CG2U354E"G@\=\;>PZ@.
M/^[=SW95C+DX$\E)5[I/6!(4 AH!H6\B):5SX5XY1TL"'7JJY%9LO3\-[72D
M8%[=!/12R7R/4^P61CL=G#5&%.A1I?%D85RO:.=US-:ABIY[.^ .*(-2\4>A
MUW[28*/&NMS/*YR_>0=S_!X6XS)RI09?%85/7A$ VR^\F@HT6NM+,:6!Y][D
MO17(X=4[/6[UI-4S1R5 TGW.:^WY?A!19(Q&.)6Q('ECX+A=]2TA#DD-[\^=
M[37O[O(ZD*]TZ[W>Q<;V\ 9<[6,JBM2$Q5Z[5MNN_#VI#I434/2;&W+7IMH9
M[)"V90]-M$/)\&!:^H?QY'R)=:130P44'4)"0J1S[/U)O' ZVI*T]8;]<.D.
M*$?1U)?/NA"$4337MC412M]K=T!C3T4+UP #M-B<YKZHN37((6OK73BTD[[>
M66JGTMA? 4Z@L#0/PEO9A%71]EK/(*J+*C=OC,/#^,@[P1VRUN8GW.$DR48]
M K.Q492]+#7U<"_U>P 6M4@R.&$ HFJV9N^YL^V_ G"$;:(2:@2OG$BE]VJP
MEH;H0A+5R)HS#=  _TV5[;:)3JN'=V?$]MIW*VF<1-U^?8S^&OMM\IZ?2?]@
M^7F4E&Q9]\(0L:&P248!O9T0RE*T=<%HY#Y^90,_)%5\*,X=2[:<E3^NYW9<
M%:.5Y);D?LJRZLIL=2+[T$JOB0T65>]IQ5Y2[1XXO(9'-N6Q)B6:[OM50?F>
MR>@$8'8^>.V2XSZ)OL?PG/H^"@\'KB^-W6=\,,F=(>BD$GE'('L"15$T_*RJ
M2"8:3\NT5<6]0<&:W'GJJRR'(=8QI3J(^CF]Y_9/D]G'XQ3)N>5IQZR$\]!@
MF<K=]';5]*17\]F',7W:]Y__L>AP?AI/85IZ'E59CC]<M'&\S9%,6H+2,HD"
M_8Y#0RNB-%E$TW0I4>FBN</@_1#OGRWX'CZO1/2RK0M%$P%ZTZCG<R0YC:PT
M-;;<A%%575P1R%$Z$75LL<B<I>2_\_D J"WM[&'/T8Y(N9O9@YS2XRST71#K
MRG?^&HZR30>5@C"M#U:Y0"$;*J%\T W(0F3#[:#="69(-O6$'.(1%N=.TFTS
M<9$G_O!, #2;@RPBY!J)[RJ)V&H6KAJC029?"W>ER_T0[[W6+A7 ;[/ORG^?
MC^=X9ZGW$?1ZHS'T(E:]ZF[T6D"DN9$A->]B#)+]AO;CT3T%E7X($MY8CH>1
MYT%T^QN8X"^P/)^/EY]7Y2PG$UQ='B4=LEG*BH!@S"T)CSUQ,&(0X&1O-:!C
M4:HERUX%;P>83\ >'(6 !Q8P3W/%391?8+UL?Y]-:H;R^VL",O[0X\-1!HFM
M]UPRK8,K/4*,EB)$4 VK+PE->BC(VO*90ZHQ< (J'5)"?(KLNJ*]JQ"? I5Z
MIRY1I7+".BE[IG(0P:BBLX[5UW!HL[E'M<6C%288DM'DD"7?;CS-2O_;07T@
MC4I 7A.B^;@LL?9?D&K]^H6-=VYV5OC2;Z'7!;KU4&*46XFE-M>[=DAA99$"
M%#917(NV0@+@OXA]Q/&=5!9;M+P@040-,=@L-)I5@T$E$D(6D%V1OG?98K]3
M>;3!#>J<8ZBKZ\85F$%2;QA:;I0SDJEO6I#R)^UO7!4YD8KVL1=A+BD9]OHM
M>P$>4K#P[[$"MJ+(,%A]>]6,JQG_\5-Y!].W^!J6^&-KY""/0HL0G#0BI%ZH
MJ](72*J)5J'HJ)2UE?TJ]5%'>*#MP:OKB@\XF<9F\"9ED:1>W4NB0+7TF_00
M@51DTLURIVWMA_A?QM(>=BW<DJ1P+)JPJII' +Y++X/W&7NK1JUIMAKACDZB
M<#%XG4.QK1S"@.X,^%_&@!Z7V,<CR5!.=*HWRGM,(H=>W[G)7ITND_]A<@'P
MK7C+'4=QGNB<N,#HTV'V$6ER4)5]"^ [5B/Z[+7,/4&U]:JL08I<Z L%:!$T
M&%4=MS.R%^ A-4%^0L0^'DD.K;(?FXZ@:5H@1J#0S"I:B['VSJY6-"C9UN2S
M:=SWJCFSJ$Y<H_7I,/N(-#FHRKX%\!VK,:++MD#/;S44&"@R-4EG$-BB=K*4
M8"MW2:B]  ^IY_03(O;Q2,)W=WHUZI=M<R9>3O?;<4/7'"CC1/$1>Z%!+5**
M231;I0JA:I/9[UWS#^,Q:R#\_S5P?0V<FE"<]_2N3=A5P/P<WH^7,!F!B;W_
M/(AH#5DB[7OAHMYP#Y23$9MRBENM/XR*?]S?E=+[O2TV4B]"<-&Y8(D<>%G/
M-Y>FA-8FT ]):<6=W/ 87$/:]F3FSRU7#7G%=,"%T\.6*?VCWJ[:)]M6_1]<
MQDQ6+A&D7J$$0T,#V/.#N8\J[@4TI W%HU-F5\$<D"NOYO@>QO6J!8W!7#)1
MMLFVZ@)A:*A1DL>OBL. JK*W#GL(TY VZH[.F#W$<T#2K%7?*_C<]=YE*Q%R
MKU^,(8\G*Z][)'4(%H(6+A!"VZ\\Y"R=:"K&1'^D9"_;MAO20:7GG<R,L<F2
M)W/X)M!_PGP.T^7G-:[/(YFL#C1TH2&1W[RJM:X2"H^]@58BO'#M,.V.E.%'
M/&S+O:<G29*#3/RA=SL?>U@,H87HK1>]9+&P3:G>%RL+:5S.KB4)_DA7CG;*
M*=A);3]4D*7Y6G.AP-,9W9=U)4N"D:Q+E "(BFAR@+#B:97'.1;G=JBGLXWX
M#M+JC;Z?K!J(=:NQT5ML9*IOOND@*M0FK"]!](UBX;,GC8'6Q,#M1CX&UY""
MCQ-2BUV$?-U)+PMJ]CH%9]WEO<2"$&O16I#=0<)"9HV\WB \Q4@M.V>=3<QT
MNAW)D&*1$Q*(04PGZ5_J4I;2VB@P2>S9!RBR"Q1($7#3;$59N9-4GFK_TA.R
MZU 2932!#0E;O:MVNE*U%6NR2+&WN?=)BNRC$U5':#;ZWO^;W?K="VE()^<G
M-7Q\@CM0@<*[KL0%"K%5C4F4 K7?W344V7D4K=4&+AG7R@%V4QX&MN71];^L
MTN*7(B/!+MI]7))]78'F!\Q+,MD6@I'=9#O34TV+B+%5$1TMA::A@>(O*'PG
MG"&= 9^42SP"8V30Q;G%YW_.:=)^F'V<CJR7KM0<A384@%KM"(>R*(PU+09;
MD[E^79^!.-=1/(8O\=^!+WN)A]$O*E?5Y2Z]M9?SKA(IL#R?+D>9S&=,:E5?
MG5PTCQ120J\]*"-8;Z3WCCM1Y0%(CR%0^C>P7IR2.V9&B E-0:(0,R;CA86N
M"'4M0JIJ->E#I>,!>IALE1%RQP:F_#=@%;, #UH-].\XJ114+F""]?**[=M^
MQ1:FM6[D#\ZN9J:W^ETNZ-<;YV2SMGR'MZ<;_H!+&$\67X_E<:5#CP6-H\[H
M2::1J2CI!H*7;8N;_",PVMC2O(#D>L_@7E?)0Q:])Y!I10>?N6^([(IU7YV\
MZW,O-G.6(XTZI6J+@+Y58PVBR*GV8E1%!5==RH$[A6]/R$,ZCCH*0Z]K\6.*
MG,UWV!5T;Y1YB;N26R.CK4)!Z*6QO>JW>7I+@-!<DK94SYTYMS_J(9UP/2FV
M[BAX-L)>V,&=%EA/N,"DDJ#5I(25-%.Q!2N*E I+5K6R5S[;'>W>,>863[S(
M<[^>W6Y0EYAR$CE#$KV$@,@D9*%ZR9U0K*V:NZWFWJ"'9(2.Q-0;(>I1!<^W
M)_)XV.M,O%]G2^Q-V%_,8+J174Z!W,BG!#7:+%1OYF&S,2+V6K(T HK 6U(1
MV7=0. <P)/,T?!XS$^(4G+[:FEQ/78HZ*%.:J-";Y&+?3W#8-R9]L3XWFP)W
MH\P]X XIWV/X?-U+V*=@YV5V/2VM55>;BQE>@S<IQ4IK2]2FJK"^]I8U10H3
MG0E9AM("]XDK$_0A58 8/FO92'#RX/5JXF2N7A5' 1/T&_O5"#($28!5RA79
M;ZAQ-_9DW60YBI=UWWV'*_UE"K8*1CC7C^LI+.WU/71/A-0)7%,^<>]6'68D
M0XH?CLEN!N>+FR<\UV.V&,C5F<N+?@9S=8ECC3U LKFY(+SI[6-ZH8^8M18-
MT(%NQMET+:2XXQ(-&Z0A!0FG(.L)!7QT<F[FMES-F7* G@+S"KWZ>XU%9&.C
MB-4G)8W3X#PW(V_!,23?_RG0<%]1'IU[K^:S>EZ6Z^MM*_4.DS5TFC';+.GT
M9&M/M,(H0&LEI"D@;32^A<K-PGL1#<FK?PI\Y!/OR1W[C<.)$JOQ_:YE[ =I
MUME"BXDF,F-JSFMC4''OGW"?2AW=U=F8/EVC5KH1\7IW;VM*S_#V%&(V5W0Q
MQ6AGCN3M;'=H-W3O?$>*,OL\.TKZI&[/!F:(KK26O"@AI-XJSHBHZ(NIQF07
M=:CP8+80#Y1_!1_\R)1DD.E 7* -]-)[&RI* ;6GFSMP(K8$HI;HJ_49'.3C
M>$';<7/HCOF1N<DJYU/LU*]O;OT&GS;KDL1,;J..0>1<:7%AZ=W(*-+ E)TR
M/IGBV6_:[0OZ7\&/WY.^IR' *7B[.E+X,EN;T$.48'H2@DV)EES6Y*!HVTO]
M!Y>E*R%Y[G:K+,"'=)?TZ?"7B0@GR4M9G8AM3%DV,=1<FO#8,SK!19&P:"%+
M"R54)67@/E_: ^ZQ?*F->YX;<Q71I*)U$]!ZC980LXC]2R"E)9O2LB&[ W4K
MDB$%F<<BWZ[NTOZB/$TV0[]6<4L+\HTQA!0!6JXBY  T!J,$D @I2,Y@I0:E
MZ@D=ID>,8$B!Z;%I/ !.G/CT\G67ZLOVCP6N)G1C$%Y'W52R(EK7&QZ&*J)/
M13@,)FMLTN@#;^S=B6U(\>K0->\AQ'V:O,<E3-^.>^+ ]6DTRN4D<Q%-]9 %
M-$&'WMW+RA;ZY4>')\V O OXD.+6)Z!YF1APXLV6"^RC%%0)L52A5\7@'#E!
M%"X9T9QJ%"-E515W\<Q]\ XI1'T"5-U/WJ=@Z-]FL_IQ/-G<P80<2PX4-M<&
M-%<6H6?"%Y&4\Q@EC4=S7]?;"_"0>OX\ 8[N*?$![/U=+JV2K)%]+:'KYT'!
M99&C<Z(9T^MJ2-_XB\/MB7E(99F> %7WE_LI;Y6. KDBN>4F9%PUQ^K%.;)7
M LD"2'*RJV5O4;P#S!/>MVTYN%:;)!KU;-]*\7+JK.I%3D$%;5KB+CK#==_V
MR=T<W8J-U]?LD60\B#WYF*NS4+UP27MA(T21DP7A:S+.^9#**3WT76+) =\#
MW8N5QY+RT;?J_A,FYQ>P)Y/91Y@6'(4LB[=)"E2H"*]T(E8=1$ID:XN+(2?V
M)-J;,+;<@#ML/:YCT>W(TAM6<:[7^ 'I%?K]90W-H93FV@G820IS[3^%3&6Y
M=MD]7O?+*ME D+(([Y41EAQ]$9$('9+)4(UI^J3!UC6XQU+4KW&!M%)[C8P?
M2,J3V>I$:#UGH4@?5$:A3>I5_)L660-%*[)E'9K55@9NG7TOHB&YL,<BXZY:
MG$^T)]G6PRE]-^EW+>O9>#I>+/OK'W"-WZ50,6$32',EK#*>8N@<A2H0H-<_
MSNZ$I7L>0#\DG_?8-#XQ%X[N"K_!"7W$6P+_"\Q_Q\WI4TT;2)5P^WXE+E<I
M4@M52/0Y F)3U\O*[:]>[X;S1,^F3Z);F81Z=#)>]E-9=PA?-U$9.>^;Q) %
M9BF%M?0EE=9$L-H;G:5M6G$S\0XL@VI],W0><LCS-,?*7]J.7>\V%DMIZ$L6
MU??&ML&34^(J+2 ?(!8=+;)W^.)!_D2/FD]EU;DX<*#N.[='M[_B\F7KA^/+
MY7R<SY>]'LAOL]?8(^P^A?0/EI]',229,DV><H3<HG<"?*[D7",Y*BK04N3>
M@64#SZ %;LN >1#=12.OG]?MF/J]\%R#CJ+:E(0UL8E4O1>R-5N2;4&S]XQF
M@CZD(/4TG+Y%*QR=$YQF[2:RWC"L-2S+U>[M;?NT"HOU?6.V]LK!K9 %EH9
M.U55-CFT<( <E.V!;AF*'KR9]5#9RBKPDVRHS&E:7\UG;;Q<N8A2.AFLM817
M]?M&M)8R&B6<E F+*ZWB*9.DOD9[Q'FZW.P>%8<JQ>I$P8;D!9%D4W5-> -&
M&B^C\=R='+9'.213<R0N[N%Q[B+:4RS5Y[-%/Q;L>6Z+-[-))=T2;.[QFZZ1
M &N:'T M1:4!.+*)(03N-),]X [*I R?E7M)^R3)C.N \8NY'J'V,<N81,"4
M>X%6(V)-1C35FR04-*Z<D*&W(#ZAY:TZEU5K6>4]R;>8E:?@1)46H 5CE#GA
M;>][+>^3L3#[<G2?TXH]Q'W2Y;S>_T$P535IA4X8>B/M7BZI:5$<O4A_%)ZT
M&L&])^5/Q]J<D*%[2?RP<?4.FP*TO,#DVGKZF^VIW$'$TA21+!=;7,9Z_;KG
M,#>*CFZS 4*JH8!(Z&GB2NPY7:B%#4#1*[J4<QG .K_+9I_<%AV=O1Q+?D?Y
M'_VD\N='-5$WP7L(VHIB?;^O'BB2,Y"$D1*R]%AT9;_J_2AD \OP.!E53R_V
MP]JK52_=Q<5);$>]:I<\70_X^@P&U#I%H!#25-]+JZ& EIPHLN:@P&G$ QQM
M[HEZ4"G3 U&[QR3"\57OV7L8S_M*>]EZ)<L7XP]8+Z^NA22;2E4+*!!["4NR
M'B7V6P<^EH15A<R>*'(/GJ$EBSP=/<LDXQ,5U, YV8)U]!)MAN*=$JWH0O.5
M(@78%H4/WD)Q*2A_VBH:FVBW3!+YUV7LD05_ @?V NRZF=3%;*VAMY"@R.1%
MC,%1I-\HTO>TVKPUV4N;,J3$[[C>@VA@-0B>CB)E$_-!KTVM6QC-KUI&OBGO
ML)Y/<-;6O_O23G*/:U"[/8CC6A/#$)FN*=U\VJ]XU0?%1NBMSB-1(@5R_;"(
MW(H2*$O3K9ABV<ONW8=G+W7XVQPJWOST46VZRE6EF(KDWMH:1 J>W%OR()R-
M3H;KG3WOT&YW/&!(&T%LPOY* W',+(_)^_ML4LG,_OX%Q&)C@+V15):R"HR.
M\$#OWJ*3$=K5Y@)9X18?US+LWL<,:3?E,/+FFV4VCWQESC;PC$SRIIF>%UP;
MH6BI"$BJ"9-DBAF=U)+[7.@ZAB'=46$G LO$'TS\&X,KD*6)00N7 8B.!D6N
M%85.4N> TK7&G1IU-YHAU2(\&B5V% 9?,:%U88"?9O,?9N=YV<XG-P>_AJA*
MZWV\E  D>V6C*2+V8EVN0<K&25"5.T#?"N"@8O*#<>AP,CMHY++N)#[&Q1=_
M?N/%/6*5QWXT1W2RTS"8XI&K9NS$I%%V" &#$2:H7KK<D@<I/0K98J^8ZUID
M[QJW^7P6LW3U@:_.Y^4=++"NLN=&( UXXXHHQ34B;:/0/]@BL%J7H\HA6CB$
M8;H#SY#"E)TY<*LIXA  X[VM2S _];OA[]98<M'&>W*53>R[/Q[(,!;KA4K5
M)Q>!XBCNP[;;D0PI>F&C <.D']1L]$.-)<[/QE^.C;^'23=_;]XA+O>P&H_\
M9 ZCL<L@N/:P5F=!5S7P,!6CH8K@E196]O)/F;Y3I0#(:I6+W![_5P#V51'/
M8?&N_^T)!1]@@BN79[&<C\L2:__%=]/Z]0L;[QR97EQ"*BM4*_U"3V_(8PJ0
MGZU5@1+[U6KFT>\%>$AV9W<>7=<XQY,A7YATGR_O73&D*8T(K652E<&+I.E'
M2+TPK0==V(\M'[\1/(0ZC!RD89, O[?2+7 "^G^#+)"0"$M#H7@K*5&E!!U,
M-2EPZ]6[G?$3;Z>QR7SG&6:3\:LYOH?QNEK>Y9A(/6V4[T2M<NR;> YBH0$J
MBN0]*'*74\O*HRZ9.VOY852#VDMCXP.S- [1 GX]3 1%'GB.@GQE):SI_?\R
M(8*HO6VA&EVX]<%-%%Q6[Q5\[@JWU_;H36:QWC+@%J-SW0X7"D7Z\M1DD=4J
ML5,UP%B4Y.X?N 6\(3E2>[+E+L/(+22VU?'F'85"O8GV][/Y?/9Q/'V[&+DH
M599]AUOVFY%>%PI8E1?--YL]EIJO9Q_NS99;8 S)4V)FQ;Z3SGOZ=!L5G4W)
M-B.<[%U2(1L1L6> !8,M>\)RO2(ISP[?;KKA!*W'.5C ,?E\B:&7'8FNTKHV
M^^46R*7*D$0KY!'8I*.@<;M^,.Y-P(S:L]_]N@?/D/PG9DZPB8&YH4GW\55N
M,O04T%@J.8<E2/K.)_+>@DO>:!,5=RW8JX?SC&)4-$+3L8K8RYQ93;%*:BX+
MEU.J33>0AGNS^O$9],?=*]I6HK>W^MAJ1@_ATH\"*!D,:4M;4NL%@:P@2RI%
M,KV0@X&L$K>IVE(5'>U:-(]@=YU<9HTSLBI8G^B) 8(5-@=RB'*K] 5,LE4V
MBX=I^L.#?VT-R*E/@?2_D-63*#S)(X/-H@220;,A-,-]_?>>/?TA:)ZM)'N[
MVMEE<AFWG7K/AMLZ/-/**Z&TU"39:-7SA*PES9A=[YH; BU#KW35[!M.=^,9
M4A#%('VVJ6?<9[[6=!:7/WZZO,FP[J X<A3&U][W3FE+D3W(3*/53D0MK=79
MT1_N@/HQN(846S&0@UT4;"3Y\O3<(*RR2UWK'GPR DQ)HGHRRI9>5.QQ]3;"
M/NZF\U["WFE*V:/EJ_Z]JVI$(Z>*@>"BT,:1.=)]:SLBBJA4M48"ML8MWMN1
M#*E&-H.P&:;[V%DP%P'\FR70W-#/O(DP=WSX@7)A'C,4IG084MD;E5,":>;8
M]T!+SF30#7EWJ]@2O ]2M6HL>P+\5P!X*YT_O[C42,;H2Y7=:U<I<?'CI^4<
M:(&.IS#__#--^*H7(?U+$LYD55?FXA[D"%T%,(I"[KX#9#W%:$G6($SS/:=8
M00G<=;L/.)PA!2F[<_"F0S(,^3.7[N\UFB\.>;_'*;;Q<J15=@5<$5H94L0(
M5F03L+<MI%?! RCNH.<.*(/:C^%FTGX3S^?-?JF\.(HIMJ3 "&4S6?68K #E
M42"20ZVU5UESMV#8>/R^([FL5+Q>G7,HRW^.E^^>GR^6--WSJ^BA.QWTI_L?
M/44"8S(TSEP5+3SO1$;7/<_B:$T&60SW4?H.,(>D4'?ER_5%<&AIL2V07FKX
M95N7P0[)&M4[""OIH&^D4L2I7:_S8A0!*M "=U#P%8!!J40N+NP^Q0<-!-;[
M4^_[_A200[S>G]K#_W_P,SG<_NV ,WG[]^[FF>A,3*$)XWM9<$P4+[J>F8:
MM=50$_N9\^,W4AG'>A'*ZEITJA6$\Y88K*6BT?:#EFQRTH!16FYW_GY$0S(@
M;#QY]';R]D+A3&8_/^MSC76S=1=]/\'5_'_=P^O.(8Q,;D@?#^01^IY.IH/(
M*@;2MJV!5,X >ZUX+NR#,ED'8]]))'V4\D?O+[(=R8[ 1;;CY,N9,D/1H\=\
M/&>IHZV'PUS@Z%')HZ&0&Y62J%$;(J)Q%%VV($P"F4JI_0;B4#)\]YZ)5=F>
M]<A#S*6!;:2E71*V(K&_YRB$EHU1.EN/!\YMWH0S)+MY*/X\D.2\LW38;.B/
MI$UFGY$TUTJ[WI:C)V.44GIA:K_HH&024284P=::DD19)7<BV(.@!G56?R3J
M\$J*TPGK@]W8F+WB<\IMM8V@<J2@U1DO8G!22"0W +&8:-G3>>X",ZCS^^/I
M&@;),&[UW-R(6H_X\QJ9KJEY&C"YAHC"-NL$F-H$:"-MP!KI/^P[0 _C&E1&
MP)'HPRXOWJL8O\Z6N)Z#+Y6G=&A))6$"K!2@%K'*'FQ4ERRZ )'[6OQ=6 :5
M5G DQK#(Y:!1UU73$0I1%KB8]\F?M?,%_=1S)2AL6?UB(VAY/CM[/YOVL_U9
M>]%_U[=3]PC,F!%PQ&Z'G!2F\.[J(:-H0O8U)M$ 6F\%[T3.CGP<Y;SW%-XK
MR;W[=_7P??763^-IKY2R^KS7?99?MG\L+C+PONHU;VHN0=8HL*?;V4C+#VS,
MPD'P"ELJK7 7Y'TDM"&%;+MQXKK..H1,V S=)KCKI>9-; I\WT1KW?+V6U,1
MZ;M::E*Q1*F2.R!)=F@B<+0;J.S$V&?N!V;/?H'E^7SUW:7J?L&RWW@8(*>Q
M;EM/$9N1(T1XA?>K1W\FCVJ58?A#[Q:-+LN0K% &<[]J1'$^-F)C+2HHTW++
M_#;P<=CVOJ[VF.>\QC,8TX3/7[:?Q@MBQO]&F(^" 2U-3W'U20I;G1*I[^_'
M)E'W[D;)<CO_NZ,=EB$] .]N7)4[CF#Y[DT^<E)^I<7_VT><?,!?*%Y^MQCY
M7!I"OTL3/ 50M5J1HND'HRAE=<ZURIWFM2O681GMH9!P7Z$>G8)]D?SV<3:2
MY.V UDV4CM0:6B<@(U#03:&\!6U1GD0!?H$XI%W801%N%Q&>AF=$'!QIJ3#G
M ") ([\Z81)9E4P_1HBAQ=@J^T7R;4$.:<MV>%S;6HPG8=M/L_/YR"@)+I#&
M+571G)3:1(S>BV!;4)*".NW9*Y!MB7%(F[V#X]K60N3I$G0OQ-]FW^,K&-?O
M&@7V5R!C<T$U"8*P)M%[%PE(%-8GW_NSR59) S\4"._X["$UNSLH@XXA&[Z#
MIML1CE0RI;A<*"(Q55BOJB#E"<+G4',,4'SAWGN[ \J!1GB546"+]R8&87JF
MGFTVB]1/B[-O7LDHO47N8.9^1$.*FSG8<>,(C4\>AUX%&\5*LS:M0/0$1I(B
M"!@$%-(+.@"YL*Z96(^T'K:K''NLX/:(3-E1*D>Y\UTQKTHYOIC!]"<H^^\Z
M/^Z#.>]Z;S$$IEWA'^B)WTWK<W@_7L)D)>R7>3)^>W$K=J2C,9KL;\_=(0H5
MYT2$AL+$Y#Q@5IF_U?2]B/:.#VBF^PS?_Y2K@NE83 7I!:KN@MC01(Z0A%)%
M:1F3<HG[J'0K@$.R5XQ,NA$/'$QH?''GHR".9.E=D'MGPVQ+WX'IJ7&DG'VH
M*LA8 "MWPZ;'(1N2/3LYD[82T]%LVY<V:AM'B-,W.!W/YA?'R;UG-X^YV^I9
MW!9P]X$R&L6?IXOE_+P'H\]A/O_<;S.?]32W4<E-)PM2^)2)?M)G :%%(4LK
MJAAK#7O"^GUX.!77E^E^C>\O(_&7[=5\3#/^'B:WGY\U=#%3L"Q4R$98W;0
MC5&TT(H#[R1$[I(3^V(>FMEDX=I]JN[@@CV('7T ]<_3&P=I-8),*8)(S;M^
M"3#V^W= T8G1*2F=I&$_H]H'\-"L[JF)N*=(#VJ*W^#;#G<\;;/YQ81>VB*8
M;+R6/^?SQ7B*B\7BXOU[&.0]G\AAECD'S62<KW8F+M/E%J.2H&DDAS"%7G1"
MNR*R49DFL^JD6]'.<)=#OP%B_P(X"]*YI?=T^P$_X&2VNE"\S@C,L60?^P8X
M^;["QD#?94L+,<6J:F] Z;C#\'L!#<F [L>'FZ5MN.3 5^4)IS3"2;]74<]Z
M\]%E'^\'7(,JV!SDY(21E8*56 T-/"8AG=6I^AP@<,>4#T :DEGCI0>G+/@Z
M!^&J(AV!^@7FO^/&8$<)R&C[H 56&?H9?&]4$<F'DXT"7)4S?[WCN]$,*3^'
MEQ9,$F"LBONEBL7F/8/+NUFKHA:]:$8 GZJ*2NBLB*Y-21%1&^%#"-G[EE3@
M;R?S*&A#RJ_AY<HA9/-(Q_?R]?XEPP+_^H?_!U!+ P04    "  JBD%;SJY<
M^,X+  "A2@  %    '=P<G0M,C R-3 V,S!?9#(N:'1M[5Q[4^,X$O]_/H4N
M6W= 59SXD:<);&42,Y,])J&2L,/5UM:68LNQ;AP[:\F$[*>_EFR'O( < TQ@
MF:J!Q)):_=*OU6J9QL\W$Q]=DXC1,#@YT KJ 2*!'3HT&)\<- >M3N?@Y],/
MC7\HRM7'_CEJAW8\(0%'K8A@3APTH]Q#W"/H:QA]H]<87?B8NV$T491D6"N<
MSB,Z]CC25;V<=<M:(Q,[>KU:*=<55Z]7E!(>C9218=>4DJOKNC,R7*S:^;%9
M'CE&2:VJBENMEY22JCL*+E5JBE$BY4H9NRK\S#NFJFNN5G)&-:+B4A77:I5J
M'5<KN.:J%8-4DGD]#C*#W $S9].(G^0\SJ=FL3B;S0HSPO@TC'C!#B=%P3&,
M4W-I[QN?!M]6NQN%,!H7M7J]7I2M65=ZL]+O9A3YLJ>N:D:1!M"5"(5FW=D2
M&RYF(]D7'DH6TDYW3RP$RB@YA"XZRED9L0OC\+H(#<O4S)@I8XRGF].F#2N=
M[3B*P"_FVTEGK2M#1 ]GC9=$ VJEF#0NNC*Z33CHJ16OOIP/;(],L$(#QG%@
MDUL5\^TZOE5OD4<X8,(=,0<'%_RIBJHKFIX1V;#H,I]&432/,"/+0M%[^F_P
MR,*2KE7O&Y'T6!)* ;6N#,C4?)]<6EE1835HDH[I8UB^.1(HEX/<:<,CV#EM
M3 C'2%!5R)\QO3[)M<* PU)6AO,I\&LGWTYRG-SPHO2HXNF'#Q\:G'*?G(J%
MHF3KX0]';Q23YXUB0GT4.O/3AD.O$75.<O2A=?B'!GP5H7LRAO&Y3TYR$QHH
M'A%@899JA7IERH]GU.&>J:GJ/W.RZVF#37$ \T5%()!\3NAL4L/1& CR<&J6
M"F6@-<6.P#7%)RXW]?K*,PE1V4.A @7[=!R8-NB$1+EDVHRR'?IA9/ZDRG_'
M+FA.<?&$^G/S8$@GA*$NF:%^.,'!09Z1B+I)'T;_(J9FR"GD@UDJ*Q 1ELUD
MUPJZ.N6YT\MN9VBUT6#8'%J#56&WBZD6]$TYJQM2&KJ@?J<B[Z*MOBH=ZL)C
M!E;KLM\9=JP!:G;;R+IJ?6YV/UFHU?ORI3,8='K='Z+6UZ)$7:N#$K]BY@%G
M/ SRJ%UH%2"0ETOU3+AG9*>ZE1WTZM2Z78ZS7O\+:M ;,PB#+FRJ(FHG('S#
M^\0%)A0 \P!/@!\(W6:V\TK06H"LJVA&K9H[K2C_+C8;Q15*.R[ITMZL:.WA
M%2VUUK<N>OTAZITAT)_5^=1%%_W.KP"0"-;SI=5'%Y?]P66S.T3#'NI?GEM(
M,["B55"OC[2R(SY==MO0;_C90DOPL("&9DM2U^I&:4<=[@LV)$]HX, W4TGP
M^GE-=(=CAY',"";0TT.ABWHV#T<DD@G FY![.TZVPLF$,I%(H3/J$P1+$:0V
MT9,CY:Z&@.TSY$=:6=\=,K5-U\V>OO#R7Q<I">B[XZ45P 9UWB=CRL1FF7>A
M90DW:Q#7K,%0@LG9I76.!O\9#*TO ]3IM@H[@^F&T^I;O5;? _24ZCL<BKS!
METF#6)G10CT'3.H.T8"'R K&/F7>T?N>\Q$NJE7J&OI*&$?5,N!?\YH$,<FC
M7R$M#.-K$N71QXAR4"]JA3Y !,5YU,(!=N#WKY4+5+G0]WR'L[.W-1TG(HP)
M3YM&-+#I%/N(W! [YO2:P&.7VF1'+WO.*'LOI:=06?VA %(U0%^=P*$VY@2-
MYLCVB/T-@0:^H9E'()PF,?5VP2(78@RH-D(SZOOR&\)!$(.&(R).L!B*(21&
M@)'@=,($$)<G$(.5,S%(?BG!E\*NP6%/E'0KQ6]7O__K)ZVB'F_^7$B'?D/H
M]]T<S'A:#UL[QYB&C K4-2,BX/>:;)QL9 -'(>?AQ%1OA^ 1 Z3@FT,>.@Q)
M?GK1K4''1!E%!']3L N@8&)_AN<L5WS&4YCOU.C.\;X)R9$C$J0V879$IT)S
M2_&^GGLZR[]H..ET1:+8''9Z7=3J=8?-3M=JPRX%$IC. &7I4!>E6> NGJZ]
M/)8N!Z3_QHQ3=_Z"R)%H<NA1AOH2&Y'8HPN,D%I#AP):__533=?5XX4?R>_:
M\1'"X@F3\+LY6@*O(YXTXS$(AC0MGU0ZEHGV0!,T &B&$0NZPIDQ#4!1DG8K
M%!D, V+P"18\=62!I2.B-YU 2A' #H("C0&'!L&A#*Q?TX(%.HL)M,T9M+$\
M#+,+^14>(#T!=<\7T[MIFL:]B(C0X2!&;Y*DC2&0&.;^)0X(,M14(-$%/I0*
M: C#IG$$ "6".%  Q2[TAN +L$_\.8*MY#0*KZE#4@D7'&C58_8HB1_--4I.
MR\4$-( YA'\@<L6! 3J"V/DQ9O"$91XBK'*.@W$,D(D.4Q52<?:^4""0P;8=
M1HXX\$\*8?T8*)74LM *I!YQNM,>*$/)QQ1'>!SA*6S]"H>5HT-\=$CI4:)"
M@CZ1@$0@;2> "!_;8B03*LQ<+8^ ?0P; P?!=H! "V;(NO'HB')4ARRM@ :Q
M[3U*K3,@"+8BUS2,&5@N\6HA4QB#167M;W4V7; FV%[V[>_<3-R-$F\$@JP;
MFTRYT*0CH]0(E(Q'L$'+KR\B-H4HS43/U#O"3,U@&N&<PJA9V[()I*,Y(7 ;
MA#S!KCR*ITGW"/:&3%@=>LW!@1<5),0(%RL$?!C<>H.F'.CZQ.9R(+F63L,]
M#%AHR^H?K,-XQ,B?L6 ^]8Q=67[WFH<"%UFQ51HX$B23?G,+$9!E^;&0(5NK
M3$)#7J"R0(V1,#N %F"<1 7X#I8EHGR;)O_;D#H[1DG0+(.-11P\4PQTF)QY
MA05D&(:BU^J52OU(.N-RWI+XV@:!@5++"U^7[@I<':Y,N"!:JM4U_:BPMN-<
M.ZMYNKWGG?O%UY-X[KS-M*X^=SYVAK"Q;%M7.Y[[_(B,G&,1K!>I4@09K@(*
M\O&4$3/[<.Q0-O7QW$PJYHH<=)PRG^970BV0&'/(N/UT?<NEGC2G&4\=-LNZ
M.$IM\ C^.]G$:3Y4 ,T5-Y_7"FIU>PN0V_K\3DKU0M6XGU11<I9P!_(+[9[D
MC-R:6DU]>H.T53@3FEY702+],R+<AO=!3IDPY1 [3!:\*0\N1"\1,1,46_@-
M=QXA:EHHV'=AEU+758&?R<B+3'Z+\*[[U+'L >$;> ^X0)!6N+#$EF^[%#P.
MRA)1M%'$Z\<=CW+'AXRRCHF[A(:GUY2^%_:ZGXN[[=7J023K#JRV.#49],X[
M[::X3'/6Z3:[K4[S/+E6\\7J#@>BE"SKP1=6O]-K(PM&MM$OEUT+28OOMZ#&
M*^ Q3<;O6#^O+(1M@Y3<J:9JWQ>CG@,4GBDAZ70'2!X)=-+KCHM[P>_6??W6
M';0^9^=CTLA#?!,&X60.&:4\+1,IH+R1^V[UOY?56]BWLR/-\_1B]+L/O"$?
M:%MG#_E F[@TH.\N\%9=X+SY\2$7.,<CXK];_RU:_Z)O/63]BX@PL/;?+@J4
M_C9.T)(7ABY$X5/6#+$M;VNU,<?R8NOA4BD5LQ5_$<?]*]6)K& (B^CH;M]8
MNS-C)">]6U6<'OFFA[B@9"0KG$@H)#LQ-E6A_?30]+MI2!Z+\@AYKZ_Y[/[N
M56GQ[M6/O1KT8K=(-V_E/HK0/KU%MFM=9]#YU&T.+_N[OD!F/)\5MMSE_>%W
M"M.P%T<LQK>%ZTB\(1G=WK$1SP;$CL6]72)N0=@>#@ >FS87S>)=D?SZ]4Q/
M%/EC?XYL'(N[&+).F]S,%-.,"&+@&<G5(5&E'1$/^ZZHQPI"\E MZ2 I1R06
MM5E)$,?<"R.0SBGL6$W[44ZJ[N"B]QTQ(_BW]7Z3O-YT]ZV!/7W':5T==]R:
MOGUGX>ZKT<^T1)\&@U^\2ELN:%KI_ZW2EL5[+>4G*=.6(!36GH22H1?*Y>H3
M%GR1^*T;Z\Z]1UMKV%<2<_&.F)9??4WLZ3?;+RO=Q[GY9F0ILB*R?/H7Y/_<
M0[T9>;(J]0^JSV\7,WF%X,U83;SXMHL/IC M H&^DA(M9T7[+>J[<[XVYQR*
M/R+R=A"RY5'B+MVP[LDWW*)-1]PX3WC^=.K5O*]43/Z6C/P;-*?_ U!+ P04
M    "  JBD%;CJ=_U^9=  !;5@0 %0   '=P<G0M,C R-3 V,S!?9&5F+GAM
M;.R]VW9;27(F?.^GJ.G_=J(KSX=>MF>I=&AK1B5I2>KN\156'B(E3(. #( J
MR4__1P(@19$$B0WD!D"(=I>*(EG87T9\.S,BX_2O_^OKV>B7+SB=#2?C?_L3
M_S/[TR\X3I,\''_\MS_][<,+<'_Z7__^+__RK_\#X/_^]N[5+\\FZ?P,Q_-?
MGDXQS#'_\L=P_NF7^2?\Y1^3Z3^'7\(O;T=A7B;3,X!_7_QG3R>?OTV''S_-
M?Q%,Z(M?N_CI]"\A"V^-]E"$-Z!"C!!E<J"*$")'60)+__/C7W3,4C'+H%BO
M0#&1(2CC0"K41H?"Z,_%AXZ&XW_^I?X1PPQ_H>6-9XN__MN?/LWGG__RZZ]_
M_/''G[_&Z>C/D^G'7P5C\M>+W_[3ZM>_WOC]/^3BM[GW_M?%3R]_=3:\[1?I
M8_FO__?W5^_3)SP+,!S/YF&<OC^ 'I_GE__A533ZU^4/Z5=GP[_,%O_]JTD*
M\X6"[EW"+VM_H_X-+GX-ZK> "Y#\SU]G^4___B^__+*47)BFZ62$[[#\LOKR
M;^]>WD0Z',]_S<.S7U>_\VL8C0CQXA/FWS[CO_UI-CS[/,*+[WV:8EF+_F+)
M%92N</Z_^FF_[HSI$P&9IO.(0-_%<:5X0XRW??KNF"\_"S*6<#Z:-T1\\[.;
MXIV<A6%+ =_XZ 9H%Q\$9W@6<=H2Z@^?>P7G!<CK"!=;!<[FGR?3^9_3Y.S7
M!;RGDW&F)6.F+V:3T3#7'?;E>([3X=G[.?VE[KRS27G_*4SQTV24:=]^_E_G
MP_FW\W$XST/Z[?L7]<?G:44N-#.2+="W>.R5-1.YAN-AW:]>T5]7SZ[KV_?J
M\>L<Z2.7N]L%NM$D_?!+H[JW3B[), H11XOO#LYG\#&$SX/+9]-R\"5].1LP
M$9+/(8(N.8%2.D$,-@,6C-P89,C\32K-+JA9PBPNR+1ZQ*]5';_B:#Z[^,Y"
M00OEK$>QE'F#=7T(<80#)TQ!YR18Y0.HS +XC C,L"31H(B6];6F!8(?U_.=
M14^F%RM;O<:=3J,RG9PUU>=\TDR,2TT1Z#_],ID2G<D HQ\M]I:_I-&$7H5_
M^]-\>H[?OSFAU^'K_/EH\4!ZO_%C_:(9$Y:OT]/)V>?)N+YL3[X.9P/KT43)
M)3CZ-ZB8#40,%E@A\XRI5!*_9=]L0XS; #7DR1T6PAV\V4+1ZSBSL\!OH]".
M;+B&Z=GB;-L(U.":S=*(#;<":LB"M3;7'1S877&3OJ2^-TH(8CDZ2=Z814:[
MIHC@HB!P,G(61':NF(=+A1_,V<,SH8NP>V  P3F;C-_/)^F?OR^LW %72DJG
M"D3G-?GMY(L'&3RX($4JS":I<V/MWP#14O.WN08WU=Y .9.6DKVI:K:MJJMC
ML%K?>TSG4Y(DSM[,/^'TS1A7T*PA8O-40#M%O Y*@@\907)FBW>1<Z/O<S<V
M>,Y#UFMK,?;P,C_)>2'.,'H;AN1B/0V?A_,P6H$+F9G@I(!LD>AG0Z)=3!A0
MFA>-J!,VW];O!/20R=!>XC?I(':EPSN<T_HP/P_3\7#\<;9"A71^^9()5>$>
ME.<<"".#+(VPVB!GQC;FP>U(3H$ #61\4_-RYXT@I?.S\U&]:%GL4'7%4_Q4
M3: O^'*<)F<7.U:QA7'F$NCL.2CR;B :$H7QSF%");Q.K3>%3<&= C_ZT<1-
MRJA=*4-8IAAF^ R7_WZY-%U^N(][-QF-7DRF?X1I'C@=50S:0^"")%.TA* +
MA^)9+,D)D4MH3)R.$/=/G\8W4'VJI*%]>8O!N[C*G;TYG]?P6(TY#ECR4EBF
M0#(O")L)$ N91R$[G7*)VJK6A\Y=>/;/C5Z5N=[UV$T3/=BH-U=-9E+"P*('
M:3,MU2LZ+%WQD()R46-0W*KF%Y'749PV(W:4>@_&Z0+1R]GL'/,S<J;&']_B
M=#C)2[XN_OPM+&)&9Y_IL%R$R0?1N\!HE>"ESW1$V@"AQ #"F"PXBU&%UL;*
M%C!_ B;UJ+<>K.$UD/\>1N>X!K&),65!<N%).G+DO8%@H@61<R#3/7KF^'Z8
M=@?*GY)HK;36@PG])/^_\]E\$<W^,%ES,[! 'J\C?X<DNMEPCN]Q^F68<+G4
M=Y@F'Y<J7:QZ@!YULHX##X4<D4Q?>68E^%283U+*+%SS&YQ^UW3:'#XJ1MQD
MO-Z5\:]QOO1A7TUFLX&VS!G)+-B2Z?4SJ:;R56R:G!P9;<RQ]:;Y X#3YM+V
MLKZI>+.KXM?=951L!/1-^1"^OIU,%]*?SZ?#>#ZOP?4/D[=$]O%\X+QABAM%
M@B!G6'%AP='V#,86X1 Y&BD:4V5'R*=-KGWJ\R8=;:]7#ZBDT:(HJ $V4 IY
MQ48F**-O\Z!"CKHQUS:_>FCB0$=5?-9>08J&-@/'ZRD@ V"(VN7B?0EQ3P[T
MO_YZ[?UX17_=/F_R[',8?R-H83S\[\6Y2#*<?,;IXNO9LWKY/IIMEQNYV4<W
MR7_<8A6M<AS3)\SG(WQ3EDKZ'>>?)F1[?,&56?+]IM(SKZ2,C%Z3%&N6O@8G
M&+TU/F)**AF#K<.#FZ/;^:6Y[TG+W"\=K%=66RCTUM"IJNHNH1W$Q#0GWT*9
MW'JKV S9WG(H^^'+#=^NO3H.G7,YF\[O7=;-[R*^#F>X2"UB/&0E;0"7,\F3
MI>J\!C+EI;7<RL2U*YMPCX!<X=ULM?$M.+<KQH-E:/9 E\D!U-;P.GUVF8QR
M$]<J;+D)LBZ9G?<0ZVXT^TWKW*]6)[VJ9+^D2>BB9<D!YX'3KAY8=2<22,F]
M*=P%QC<R)8^0+&L2/X^5*UTTT9 CBS2WISC[/)R&_STA<?Z=UG\^O<A2R!AR
M4"6"+0X)%9W_L41!'A7#A%JBOQ['79,HN/81^W.T6RMATER"/43I;R?XFS_&
MY,A]&GY^2Z<R_3U\Q($0.3N3 AAI2TU79>15!@'"2YVBCT6FUK?-&X,[0&['
M?BSC?M2SED=-W?570P*?"3ZYMW\EXG]\.ADGG(YW<-/O^\@&[GDGU(W<\F<8
MYR_',_)'?LP6$C&78!D'B48#'2H&8N86DC4.G63*"-GXE5L#9==MYL>/7=KG
M:+F340J(5M/JM$L0A&(@G X8$E<96^=YW )C7ZYT"QU?WQUVE>JAG>3+S?0\
MSO"_SJME]:4NA/ZSA2D5?$G2JP1D,@50R,B4*B5!O=CFQG-&WVE]_W([E$.Y
MNCMK^/I-2P-)]Y$%=A/6RN+:!%A/]8AK01VH)K&%ZNZGPPYRWRLQE+ V%>:@
M%$'V3N81HB>CQP:3%%.ER-*\-G^_A+BO,G&O?.@B[OYY<)DC;\DX= JDYQ*4
M<A[(U"Y@1>#:9(X86R>=WPKD .Y'&T7=K?XMI-R#A_IL./L\F8717Z>3\\]/
M1V$V&Y;ALE'2@N\YENQ\0I Z6SH.0X98W2LLB9<HN4V^=;3S'DBG8BRTE'P/
M*<-WP%N]"YL [,EXN!?<88R(IBK=G"X[Z*.'P^1^H#YHY7/4X+$V_0@N@DNU
M7D][8Q/]W:0][BD'-#(.RY<N:NB')]7A'8[/,;^YS,_X#QSE,ID2\,M2/1>*
M=CF#HQT5%&>>OI)5)@)S$2&RS4*UW=BR";3]&R:-E7J3,LTUTH_)<@O,I6CH
M.^6W;^^_8XU2Z^BL!,WH[5&)TRN4(P>>R-P*)9#QU;KO4A=\/P>%&NBFAPUH
MF71Y64;Z6QC5[J+O/R'.GXSS]P3RNJ;19'8^Q=EOWWX0WXP^8G1>\PQO7_=B
M$W<IB)R- )]+M1$]AX@L05%HZUN44VX=V=G/RD[%$#]"'O10E]4)\)6@[":P
M]V'E;P[Y,+;_,;+H+I.P9PKT[5AT@!^+C\E8!<5&.L^4S>"-SJ"M8MS(>FW3
M@PEP/,R]QPDY8>)VT7SKK)Y7M5O[L_.:7K P=E*6F?,DP;-J50EK(*!4X+ES
M7-C@DMXLE^?:!Q_8@NQ+&Y-&HNS!_U@M;OSQ2H68X4R6I!PP1/+4B]*U-#!
M+<6.3)M83.L^?K? .  7>HB[[RK?/KJMA-FG^D]-&/I"#LQX/GN'M.IAFF.N
M/Z"=\L=O7/G- 3?!Z:0R\%A;&FEG(9KL((4B,6K+?6@=2-D)\&G0:'\ZZ]O6
MN7N+72WE^@)<,+X$VEZ]<W6W]0Z\%A9*T<%SHY@T/5R;[0;Z-(BW7]WU$?HA
MH;R:C#_.<7I&Z-Y_FDSG]>NGD[-8V^\].9N<C^<#KKTO60=@4M(KXJ6&*$.=
M/N,TYF+([VY=O[49LA.A47LM]'"M4!%^(%05[8+)BS8+KVH)]9LX&GY<6H%/
MSZ>+RN5H'6'B#*(6&<@"]!"226#(*8A26Q-]ZTVI$\#38$Y_.FG8QV5AV?^X
M^J>3+S@.X_GO)/6S\[.Z*RXZ<TP7CND ?6&A]O^V.@A0W$9PEK[B(GLK#,IH
M^48>5)>G/FQ&]"OD'GJ<W-GPZD/MS' ^_;;XI7<X7/S:((5H:L0 @E;D&L24
MR"OP!0*7CCFM"KF7K=.4.J-\V#3:DW9Z:)W2Q1:C/7&85W\9&"T3[8L9<EGT
M^K&.]D=G:O,7E6**QK<W;K;$>AK<VHNFUG9#:5J:\UN8#6>3\GF*G\,2Y Y%
M.>L_K$$YSH9(=RS$69Q"WTNZ7DRF./PX7MH?Z=MW^@2>4T248"TC30I%]!':
M@_0^1,LL*]?+8=<<\/<_:R>K9>W'+V.1+/KH><Q0I$10B:A))"1"9EUG&B7'
M\%ZM;_"<ODMK^M#:#W9)0S$>NM2F%K=>H%]$.PR3@B=I(.<ZC, [30>@%4![
M57!UI@W];)/CXY[*[JO/W'<XOKD.)PUDV? J+JTP#)Z,1BL\0YRM8AF;8-H@
M*C[#].>/DR^_7CQKJ>N+OWW7]5U8]M_L87OM3'H2[;[47DPQ2?, P9##K$(=
M&Z"Y@"PMTG>\R>&NQNK'J^X[VC7TJ^TN$NU#RT^?/!LH$XO5T8-8]-,3(H#G
M7H$5W@@"5WAIJE5ZYOYL]G;2OZ[.KJ)K&)>[Q/#\;^\&N>@@HZDM!YD#Q56
M&KJ!8E1R9).@#W=U0NVL/GKF*:BOJ^AZ>?M>_^<@8LC<8 3,6H)RA,:A]>"8
MEL[+J(V^J]2P^]OW^C]/07U=1=<P3G2)X>VKUP.%(EAC F@;+)T(B=QO:2SQ
MB(GL<D3O[NJBT%E]],Q34%]7T34,W5QB>/_\_PRLL3Y(51^J:BY_';>4%!*C
M>,C2!";N[#O367WTS%-07U?1-0R<7&)X^?K=H+B2B2:,'EHCQ3+4G"K/(%E4
MJ?8#CJZIZ4+// 7U=15=PTC']T6]>S^0W@7!*VI'V[:*=2R,*@44HLRL#L&^
M<RIX=W_BW?M34%]7T?406+AVW?'\:_H4QA_Q79CCAVD8ST:+VU0^<$CVL4\6
M:''$LD)>DV.V0)$Y<<ZDRM@Z.K4AM/T1H<^;Q#[UT7HL\),O. T?<5.H/FIT
MR5HR"JIQ'LG-]M$GD"HI;[1.YGK_A37WR-V>>QJ\Z%O@:[VAII&D*[67>14?
M^UCC8V&<\Y7(V.1*NO6T?O4%=X@X[?[0!I&IQBMOU$JN_UJ)[ZPW63'E<@!D
M.H+*(I&AZ15PKVBO*LDJU;H]W1Z7=_S%F\L(1N;DEQGT4 29]LH8#T%%"<+2
M8>&9#BD\O.K-O;;F.]9W9O]EH-T9=>BXYJ:-*C27M(1,OB^O%U$8ZT44,\"M
M$=G$''QL/6'H2+L$'26+.G8>ZJ+-@S20V03@8^>AK57:N9/,-OHX"'%06*$4
MCY#H(*CCF)& )@UT;HCH660EMO;&'V;GH7[YTD4-!^P\I#C#E+D'\@D]"2'7
M60-9@A>%%5U4+J%U@]P'W'FHDU*W[#S412.'[CP4HH@B"P'&N%2#<Q&\=0%L
M3#F(;)DM/>PU#[KS4'L*-=#-P^T\Q#A/)+4$5M+6K5+6-?<^078A.Q*F2;EU
MG[W3[CST$(S[(^16W]U)._2@V 3V8S>CXV11HZ8PVU#@B+H9Z:BE9$Y"J:>6
MTMY +,Y!0E-L"$R7YL.<CXJYQ]'-Z!#$[:+YOKL9843N.=? %JT;C0@08K2
M(C@I'<I@KUV+GUHWHT[:N*N;41=1]N#3K!MTX(QTGM@,+-:)5UH'(*/9 [><
M2YE4B2(UWF>.;#K,0[#V6FBOAZX0ZP<H; +LYYXXTTEU&T\8V4;N>YTXDW71
MMJ0(Q'IZ"R0J<*P6FOBHC$+,K'FBU,.8.-,/'[J(>V\39URJU44^@N&2EFJ\
M(*N*LWJF)D$;(5E=K8/M1S]QII.B-IHXTT7*?1@<M9'117N:[W.58F(E" 9D
M3]=L7$WF%"8!3%A-_R<Y4ZW[+=P*Y-'8N,/8V%ES#=/@UX*Z&+&V :R^#(W;
M(1W(S-A=:??18 >)]W&TK(''G65:)@V1UXZ.)=)7: W8Z$O)M,D*V=S V"<1
M[C,O]L:#+H+N0?^O)F$\>QN^U>WN8@JXUX76&8'Y&LW.M/UY3@=IBD:6'!,Y
M[ZWMBILH#F!4M%#0C=YR.TFWH3U1:],OS\OW"<=A.IPL2&VC$[IF]C/K'"BE
M"IE,R8)UUJ:8/.JXD2UQ3_.-6Q_^:#_<M!_::*IA#=8"T K'W\:SSYB&98AY
M]7IL JJ+Y7 ?C=8!V7]CCP9*FO0EX88GQ=W@:-<*)4@&W->6!D8FVAV%@YA%
M(%],QY V&A=Q7&J_H\''OK3>1; ]:;M6 J4PN_"$39&(CLP=GC5M9KDD\$XJ
MP&AE9BXIAQMU[=]0U3\^?7_V0$.UW*+H'62ZKQ2MM]/)EV%]#PAK'2?P5UKW
MF_'%Z?<;%EK"\@#]$+X.DH\%I0\0K*,5B(00"S/@D5M,/F<4>TG<ZH1Z_];E
M0ZGKV#,C6A>-=NB+>2'SV8=);0']:O@%\Y/9#.?DYQ6&C.L$Z N]Y%H(<)DQ
MT%DXKG*0R5]+95W7.[D%G$>RWAH9WK^J^\AK^:$W[ LZ/%:-ZJTKO(00(&I5
MAQH4#4XR#CY)F:/":+#U%)1U6![YMW:S;*&]OO/]NG0'#BYP@X6#8;S0ULTE
M^-K/'%,A,T4+[UFOZ5)'W<?YP;!R']KO(0V"K(R$F&<O2/+/:(N>S8=S$N*;
M\MOYC 1#^_5LH.D%\CHK\,LV-$I C%Y ,,4)Y%P8UGHDQ@:P'KFXCHNM==I\
MI,:6[THMMGDY?CXCI?TQ\ P#"S$#^8:T@.KW1VYJE,!%IQ,RL6$+ZQ9H'KFX
MJ[781M$-+V"[+N!YF(XGY_/9[^%K'5HRB#[D0O] SO26J90EO5LF0/'&\92L
MTUA:\_,:AD=6[LK*793:L*-7LY?I]7G5WYM2>PJE3W0,6%0E,%Y'<U6;67J$
M$&A5B7.9>,DV8-K;+GH=W2-_>]M5=R+"?D:4=&ZOM+Q<H!^_&H8X'!$ G$W*
M_!.NJ;O<8_NI+:$=HDE5"RD^P%96Q1>&Q66BOJL9 M* ,RC *2NC+$J7ZY/;
M'D AZJN'ULI*\^"](>.NR%B+GI.&4)0%BT%B5)IEWMK3?&QEM9=WYE"MK+HP
MZEA:6>VI0%"EX*W)" )](1VR L%Q#LX+)VU@],]=7>V/\V7[&1*<.G'Z,+7W
M7;AU1)7+F\!^K+T_3A8U*F'>A@)'Q&"3,A.N1)!":5 ,$9Q@&;20M J!B?R[
M4V;N<=3>'X*X733?=^V]PN!95AE"JI8AJZWS18B@E TR<,9*4AM=*SW8VOM.
MVKBK]KZ+*/M)5KNS"Y\7VBD>%*@8ZHR#X(!@2;!.1:X,TF+WV*[PT?J[V_IK
MJ<V^4RAN;;^V"<#'MJI;J[1SF\QM]'&0MJK16B<C%X JF%JB;L!KH8%A\LRB
M-XBMZZL.1)@=VZKVRY<N:CA@6U66O:,MUD/D-9O6:MIC&4?04<1D>:(#N'DB
MX,-MJ]I)J5NV5>VBD;[-H'MB;F'VB0[\^J_G_W4^_$)K&,]G QTER\%Z('N0
MWBLER!NP)4 2HD@2'W.N5\=L&]"G'8#=Y?IZOWPX+*&?I%3S:V>O)W.<T4H6
M];7O,"&MA0S2US@?"-12HZ$E:%ECV<F"J]/JD/R<X+QV5O9ZNNZZ@$>B-R!Z
M8Y[T;2;>O9B7X]J.9C+]MAS)-1\X50R=,@5BXG4.L0W@B2A@E3(N1QUZ*;G:
M%NXCH1L0>B<.'+;"X.T4/X=A)LF_F7_"Z3*IXV(9EH42 F;0*&(MD"?Q%520
M'1=2A9@E.Z I<A?T1UHWH'4S;O10CK $\Z9TL:]6R)5PPJ!D8*W :E )B"5@
MK13.7D3NA;QKSO VK-X>[2.1UQ%Y3PPX8$U#/59F\ZH$,I7&:06>\4 F/R_D
M#RP*,@J#*+@&PVUD,9H8>/-,W%N1/%)SUZS;W17<L(YAJP.BIH/.O[TE/50-
M5+?U<UW.E=64@EZ@9Y!59J"\C1 T<D@8DY ^&*Y:]UYNNX)'FC<Q)=HRY8 U
M$ZLOQA]?89CANQJ%?5/^-L/%>71E.<YFC5%RB,;5^W$MP5EF(01=E,K<R^N-
MVG;?IS?$]DCI77?N/DBPMEIB3_<8\S#^.(RCY1JN'DA)1L:,32!];:P8.0/O
MBX5$LM6U39J7!]S"UP-_I'F3NXTFO+A);K='<C_#@H0Y?PA?5YU%,)C$<D'P
MRJB:+9/ .:_ :96T3R6I/@)W6^-]I'(#*N_&@IL,]GMD\%\GD_S'<#2Z\OK5
M_!Z-M?1.UB@\>EI&\@$<\RFJXE+  [8#N0GXD<,-.+PC#VZ)E>PS0KBX1_P.
M??466BM,HN,"C$956Y()B#([8%&QP%6QQK6>[;@KYD<N-^#R[FRXA<[[C/W=
ML(B$0NUS0$BB6D1>D<QXR<!#%D5*D\HAK8I'^[B/8/8N'+B%OUL'_[JZL'\/
MH_/E"D:CR1]5#P->%!>^#F1Q@EX]&ST91AAJ1GDHUF5A@VA]97$3QB,M=[V=
MV%&UM[#R$/&Z@0TF1JT\A%"[/[H@P4?I@#/-),N*3/?6X><M8#[2M6&$KI/.
M;^'ISB-XMDAC6DV0J*)/:4J_<:4AQD7$D1-ZVODU>%WG2BCER#P7K,XF41:Y
M+RFT[AK1STH>V=XP :XU<VYY(?;6UNS'&_&+A5QF1*EHR7#G"$6BH_,GT1O.
MO(,HBD\Y>$S7V].WCH9<A_3(Y+9!D)U4?@MS]Q;0JTVG+R8+76(/A5 J"\YS
M,N)3E"0YK4!$SU36DLRFYG2]!<<C1W?EZ*[*O8686T?ENF)_.YWD\S3_1YA.
MPWC^;7%&A-'%*H*73CF3"'M(H$(=:L)E($N)6Q&$P:B:M\&_$]$C67<E:SN%
MWT+;G>-M5XR3+;/NK+0V,8@9D4Q[;B'8&,'*[))ES*C8.HR\(^1'1J\S=O?)
MA5NXO'7DK9&)<S7#PQGF43-06*V<+#Q$51"D<L7K)&1)/:?YW(+JD;@]V;9;
M*OZ6&H^]3=*Y:@%=A9]T-M9[D#S5P9G%T+NH6"V6-29S7CANUGEE9RB/9&UI
MY&ZIXEL8NENGGYW-GBL+D3*47(H$&R2=%EQQ\%PCB%123+:6!X;]F+J/K.W;
MVMU2[;?P=Y]E=%=2BZZ81@.3M/&ROGQ6D!BC2N!S8""L$-F5DCD[CBRS*Z ?
MB=TVU6Q;/MS"Z)VC<-LG9UQ=A6 Z)<T]Y"ARS9I#<,XZT"7Z*%QTZ9")9^N!
M/S*[?=+.MKRXA=T[Q^ZV=4JOUEYI$XI-D0Z:5,./155KB4PF[ZPVT3!66O>G
MV!WU(Z];7U-LR8A;2+US.=ZV2QCX(D)4P@#*5(M<:TQ=9PM2>Q8$3UYZ?214
M?B1P:P)WTOXMM#7',*?E'7Y!^@[]_/G7SSB>'<V4EJV '6)&R^X2?( 36C H
MR4,48)'32Q=R "^-AABX2LY*3MMVXXUOC\L[_ID1R^ZSR*/S;#'WS/+JZCCP
MQI,'KQ.=I][ZY![>T(B3G=#2Y9TYU(26+HPZE@DM/RSSEB:J69!!&6D1S' !
MRHL:$8NN1L2*5B5FE7IUI7^^KMB=6-2Q*W87;1ZDN?$F !^[8F^MTLY=CK?1
MQT&(@\'R7&*$7)LE*<RU8U+R0!Z-EE$A^N\S*!\V87;LBMTO7[JHX9!=L0E8
M<%R#E);1TC5YO+2STE>9*<^,+[X'MCS4KMB=E+IM5^P.&NFAB7#_A_MJF@ZM
MHS8/8DG55\Y&B)PCR)1X"-HJ@0_/\WLTRNXVRHZ06WVW=.TTI>Q^V(^#ZHZ3
M1<T&U76GP!$-JDLZN^1" I:UI>,Q(7BK#)V6@0=:4NZYS<FAF7LL@^KV3]PN
MFN][4)TS*FDA' C.#*AL!001$Z2< IE4W FQ66G\@QU4UTD;=PVJZR+*PPZT
M6(5/!J6P*(N4M&"K@3PX R%F!XE%)27SBCGL<PO:".5I!U%WN:#N6>,'GB(T
MF=4:^]H7:O9^,LH#$>JD1Y,!>>T_(B5"=+*:UBP)VL5C<KU>U72#^\C:!JS=
MB0.''9]"OS*;O9U.RG#^BKX:,&=<#E(!FDC(.5-D9^0"2;&0@@LRR@-FS%Y#
M^TC>!N3=A0$-'>VM"X0N,BN>Q-E\&M)\X$(Q(CA5FTJ6.H'.@_=2 #<VZ)R2
M0]-?JX/K:!XIVJP2;"=%-QR!TG4![W"&]. Z6^X9F3>CR:+Q^FHU R.51XL(
MFHM%57&&F+(%X41*46,=3-Z:K7<BVA]C#\2$+7G83HT'/O%Q3%^-%GO!&>FV
MBG ^_((7*]'9,F>5 (:TZROM&82,' QR+@QZGG4YH 5P-_J?A;P'UOL!S_WW
M.**/^$C+^#U,_XE7)#KP7&BNR.!.SM,[J)T&7Y0'R4J,2OA$"VF]E:Z'\[-0
M\4 */."!_F(RQ>''\?.OZ5,8?\2_DFX6EG.Q613M&*0J,Y5H(<%X,I^EPL!E
M5-+IUOQ;@^61?/VIKN%$LJTJ&S]/,0V7&2^TEY]-IO/A?R^+#EP2+'+I0:=$
MJ^#10W!(?W4R692V%'; >]([D/\L=#V@O@\[J>RZ& ?..(DJ.'#6I=IE',$E
M+"3,A#XR8XTX(%6OPWWD9S^:;3A&;!?HRRN3Y4%0; I8$@AN+:A8. 0R28!Q
MYDUQ.:A#>C^W('Z\8&I)XBV9<- AI1>(7Y"FZER_&NB=?YKD*],M!S)J)'L:
M(20?R;(.'%QD'(2TCL58DQ.;=\G:"-DC?7<U:=L3H!]3X=8&-%^&LZ557O%7
M:_S-^&+IOV$A8WVYN@_AZT GKU2T#+(T]#YF1[(,24&1T6)!C(*UKJ?>'?4C
MO3ME3O?'B ,.+'UY]CD,IU49;TKM%/9J^ 7S:MA.0!Y,L>1H)F-J@7H"+TB,
M0@CT3EGNF&V^+Z_'\TC7G7?C1LH^^#!2)$E?1C<2N9-!60/&DOB4B[0&Y!8X
M"P%M[;WH#SN!]"K:1Q(WL(AW84##6:/=C:$E;!+[HE'24C,7BU :G<>LP&7R
MAI6LO1BQ'AVF*,Y<DI;S]E;P'8@>J;J[]=M*X?W,%[W/7K_U5ZX;.HG366$U
M@^)9;283- 3E$QDZ7JI4= JBATN)%M ?"=[)_NV9&SU-'[T)DH ]+P73?-$T
MZ9;V2$JB$C$S,#PMXBT<@H\(D9?DR3EEZ'I(,^P.])&_G?C;5.]]#!?=X 6;
MO4:"7V=4S^?383R?UPK)#Y-W6'M!U7MN^@_FWP;%(1TA==HZJMIL,9,Q[T4
MS65P9"LA-ZR76M<&X!]9?7<QZ[[YL7X,:=,&<!=CSZ:8</BEPGZ?/F$^'^&D
M7/SLW>7/=FCHMMV#&C1H:[#"1@W7+I[V>C+'&5'\U22,KSSZ.UL52HW,*^#1
M2.()F:A>.$T"33&4E)7-K4_"3;'MNME>R/Y-^>&)B\?18U\,Q[0)T!OS_='+
M:O22E4";.,1$UHS"Y.B0,!E29$I+8TIJ'AO>$NJ^6I'UPJ;K>]\^U'4L?<'>
MX8B.HOPV3.??/DQI@2$M]O;?OEW]R:+RUL>L(PL&9*P]PW&1%RDXL,)"C)KS
MDEL?])NC.U1CBKUP9;(7G?60C7T5SZIZ=Q-$/?6!N(GF,"T>^M+?'3390?A[
MHH5*5CD>(2G/"1FY\,%;>@4SH9+&&:U;!S7W18=[^B8<D T=9-XS"U85^4H6
MJ3D3D#VC7;$(#X[5S"UKL\P)BTZMIU/?1+%_IW!7W=RAZBT$V[",?'&)3:3.
M>-/I& 3!G$@E@)62ELA<A&"<)W1*Q!AT<-<SS-8$(=8\8/]Z[-4Z;2;+UOK]
MC\DHQY#^^1U.O1FX'+"H:VZN8&"+-X0G:7!<9V!>1^.*RK*DC;1\YV-.4=?M
MY-K#YKV(,5U!-A E>U/(EG5)9E!1UIB^\I +T\9IK9QH?8!?QW!B)&@BZAXZ
MP%W'<X64-J-9C%9W(>K:W9%#*,&#T5;);%BRO'5\;CV:GX0.6XJ_8=G8Y?)'
MH\D?]3K[Q63Z;'(>Y^5\=/.LN@#+<XQ*>PDBH:T;6+V==@B^F*"<-UJQUNW4
M.@$\4?KTIZ0>RL%N KO"]L 3=SR1)2NSJS9/AF@5V;2%Q%*S?+VRK0ET!YY3
MY4LK%:Q-INXYM/.ZCO6L]=U-XS@W/K67H,W=V/<=H4%?')>%?-)%(_$ZP==Q
M&T'Y7!2SD1G_LT5H)#)F"F:PS-47@&<(2B+HZGTYEVGS;+T'G4J$I@N;6D5H
MNJCKT!&:&;F W]=Y>SG+S>\BUDZ9RPD 2O&D3:S]JTR=@IEHL4$ $QA0&1;I
M6-B$FP3D"B]GJ[UQP<E=,3ZTJ$TG_DP.H,>&GG[%O0[7Q=20#9!UB>7<P[2[
MT>PWEK-?K4YZ5<E^21-\X$IH!UZS  IC!B?(22570R6UB&)L=,=_A&19$^DY
M5JYTT43KMM9/S\_.AN/9/U9&\,MQ6D4JLD>/+"@0SA&H^@<A,>"SBD(:U#QL
M5@BV[@G[\]-:JV#26GY]10(^X/1L(+A.0@A.:Q$$I'9<B%QDX-ZGA"%98^[U
MNVY\ZA$[V=O8L[M);;^!'!:]"[4#@"O$+K)ZB%BQ O4N!9VTO-'.^<0".3LK
M>'>YKMV%F]ZAU'+-.9%Q^+UL_GOVZ)5:^ATN5+H^HL'MRDZK:G35\MT*N/+
M[PSSO#BF X)7M;8P%_K*$<UL3'0<H(LRM0Z?W(VHW;7*E4]?NE*,:T_.%+E2
MB/5M2O4%X X*LRE)YK*+K5,]UJ/9U^5(0_VOOQ+92=0/_M:#UFE*$ 62C9XL
M*K3@DZX%81AHT9JKZZ6M/^&MQVX4:76QT455^_51-T'V>+'10*N;.ZO;J&2_
MI#').DT6&V2E62U )2_=:4W6G"'O3G 1-QO.<X1DZ>MBHR>N=-%$\XL-G'T>
M3L/3, XYO'I[D7^I2PR6-E0G"(<208(GEPZT"Y)IH[3B?B/GZ=://ZHKC4["
MGS257&N'>(7H_1^8<?SDMXL1MDI8%Y( 60*K6=@"G$T(#-'G*+PR6771Y8\?
M?U*ZW$%RK=_+1=K4<KDKCQ_SB\GT8M&S%<2HE;:"(11=YQ-G*2 8G<DBM\D'
M%%FES5I7;_:\T]!V#[+M(6^Q7@#4.[:KW0!MT5Q*&T$+7P-Z24.0L8#'F (O
M@3N1-SFS.WBAM\#8_Z57CX[HKF)>NXGW?<=UM1:_[=76;9_<SXW6O6O8ST66
M2\E$@QPRKSN)E0RB-P6821&CDRS'UJ_5P2ZRDJ5##7T )A49*#;4:V%Z=3AF
MVCRC95RJ?:SUF"ZRNNB_PT56%U$?^B+K8CFW>T6O)V-ZWFPR&N9:JG5Q4BZ<
MHD)KU%R0R)*LQZ000++C4#R/+IK,&6_=8[ SR".\PNI$CLD^E=1#^4TGP"OS
M;A/(/55>;P'W,*79/1-A%]KMH,4C(:#52:-3"7BM5E.!>W(M<J2_&N\]&?^E
M>770T1#OGB+PX^==%^7U=*?VOR<DX+\3TO,I7F2[D)^25)2 JM39!"*#TS[3
M&5 K'IPRS)@N=S$W'[%_WZQW[=QR4;.C:'N8/+YL%;U*DKB<Y9*4X[Y4Q]0X
M \JH##ZE "X9QX4I:$SSHK';@!R=Q[Z+Q;V[J'O0_],P^U3_J6_#ES#"10D2
M01LF8G_]P9-Q_O$;5WYS0#NAH%V0@3 Q@A+>0BS* =/,VA)R8J5U-?).@ ^0
M]K2[TB>'TE@/]LR=96[(1-92$**4'"B7-43I E@3G$CH,,83KS1L3I9F\N[A
MHKANL&/ZE6\$:1 %BR5*I/7E.HHSTB)K$,JFS&Q8]EIHK/NKSS\%76\MSQYJ
MU-].\7,8YE5?](M5CG,UKU;L*ZYX##[04F,-@PCZJD@-&)C32046KH> =M;X
M_:A.@0>-9=]'O?G5-0_H_#&F2 >!]AVBJDRT#8EJ5,<DA,QD5/5J;)Z"SK>7
M: _#M]Y.)Y]Q.O_V=A06Q*OVQV)X?=V89"P.9>V@4\C+45(6B*@%U EWK&!,
MA;6N;KX+STEY&,T$WX/E]W(\#^./0[) EEPE2,^_KCIL_W4RR7\,1Z,!0[([
M:J?.[*I_G3-A-$("-R$90EF4]\VM@/MQG11)FBNB!]/P$D=QQN=%,E*)BA::
M"M#3'0AMA'*6N7B]K=G.A#A)I6\ET![LPF=8D,ZH7-O9+]CWUVF=?1H82AN\
M!FFD)+J%"$$KA&*S2=8FRT7KGL>W(SDII3<0=F_&WZ .1N#$1O#,UJD)G$/(
MWH"T*AM.QHX5K=_L0\T<[/U.L9,P>S#X7@U#'(Y(BGC#J.61,\Z4@*0YD8WK
M *%(#X(K:S,K60C76,WKT9R4ZAL)O8>1Z!>73F_#MWKC5 >NI#0]QWP3\D!J
MGHS0$K3@50)89ZJ*!$ZI$)6.DH30TYW?!O#V3YA66EUS#]A:)3TX"N\_3:;S
MFMGXVV0ZG?Q!5NELH B3+'1DF<((4HW'!BXMI"BCLSQET;QA]2TP3H8-NXJX
MKVZGMY#1)%>LD (T'6A$1H_@&#=@LA7*9^7B9MV5.FA^#923T7X+4??H&ER.
M&KP"<<"B\D9&HF.N_FCT 2(/%KQWSIA(!HYJ?3%P%YZ3X4(SH??@*-Q"4<L8
M>:_> F.N7DO4B=;>,O)>.?V(F^!5Z\O#$]X(=A1P'X[$JJCA&<9Z?_DT?![.
MP^@5AAF^B:/AQ^5 O($,F'GPG#Q85D!I)L#7#CR<(3?"1U%XZT-A,V2GY6"T
M5T8/4^:OGV97HEP\B1QTG5);X:F( EP-B7I!)YSF6%CNI5?^K6A.BAJ-A-YP
M</LM>]K ^:28$0@B<JS3N 7$I (46^C[S,C4?-3A06V$_5PV=!)K#T/.+Z,6
M@X Z^V0-:![I[!.($$5PX!PMA_[?&]X\7^CBX2>EW>U$NGZZ=]\EA->F^[:M
M(ESSX?T4$FZRDOW4$G+-O5*%@]4ID.;)Z//6)U F>9U4<C&VSL(X6"VATEFE
M%#AM6<S1&:4T!.WKC!^93,I.Z,U:B.RZUF.J)>RB_PZUA%U$_7!K"4-*T05+
MJXS5!O;.@S="T"J+""7;Q+5I3*A3J"7L1(Z=:PF[*.E(2KDV@?Q82]@K$1K4
M=&VCQ2,AH+0IRU(R:%]C0<I&\%@\.?<Z6B[K^)G'6L)CY5T7Y>VOEK!P%1P+
M'M#P#(J% D$D"<5(9317.1AVG]E^"K6$G;2S62UA%]'V4$OV#K_@^!Q?D'B>
MDF56[Z?_,9Q_>GH^FY.3,[W,,JSN)OVOYB4-@A:E\"#(;76J-J0S$"S]P8PP
MRGD=<VR='[(%S*/S]G>QUOM64Q]5BI/9_$U9 1_PZ)SB)D(I+-<"%T=@!-F.
MR:CB0[2L^8"L'P"<%!NV%VT/)LHB0?'M=%*&\P'M9#($:4"*.O2N#D9T-@F(
M(BJ;HI3,MVYN=.7Q)Z7C;<7:0Y['#W2[C&(R9S$QE! =TI)R[5:''NLT#5VR
M**+HUEE@MP(Y*:WO+NH>LCS>X0SI VN1\C-"-IHLZE-6M6H#+)*PZ-H0+]=8
MHJ%C)G@+A9M0$M/!\-C<&K@#T/[YT$!I-X[[5A+O8\/',4[#J.8CYC,2;EUO
M'<1Y 8]V)10FQUI]PD'5(C8?A:*7@!4E0J#]JC4A[H%T"I1H*?4>SHCW.!I5
M^W.<?P_3?^*<OKY EA./3"H)5@:L.6H.HC0>LA3..1Y,PN9= ->B.04J-))U
M#R?%B\D4AQ_'R\RD].W#-(QGM%J2[U])5*_(HOD-"_U.=4]LS5YU2@/M6*EV
M,I 0/-,@<Y1,R,"Q>1^2#O!.@2=]::.'O,%G^'F*:;A(3WIR-IG.A_^]_'J9
M]([UZQKK-F$1?B"?EO%%:Z\ KE[%",&UB4IH:5M'/#>$=@J$Z4,+/60<UH77
M<62K36\VL(XL'A4+!.5*;9##P&EFP:"VQBOK<O.V%-<QG(+Z=Y)K#S5);SYC
MM7'&'Y<9%W7#&HA:,E=G'C F:OBQ'G#%&C!"6718?/O\L%M@G)3/N:N8>S@.
M7H[G.*55+A&M^/AZ,IY<0*V[D%)19MIQ 'V)M1-[A&"\ "Q&9.X3L[F'Q@/W
MXCHI;C171 _'P7?:7ER/#\?G!&W%Z\EX9>9<UDO@[/E7VBWI^<-QF'Y;2&D9
M]YF3V$>+-V&Y[(%T/@AFR2PJ4I"KK<B_XBR"B[[FUC,9>6M[H\?EG!@UCT/M
M/1Q\EY!7+]QOY/O7>V!9A\3P:FA9(T%ATN U6>HL,"^BYX[P]<+&&U!.D$F[
MB;N'*@G:6J^<R(I'7UNU0RZ:U^G'&5RQ$KBD[X8ZD\2T3IS^ <!):7Q[T:XM
M?VB:/WW1%.IS;0H5QADOFD+MD#9][V<VR);NAKM1DO3:#EK?N9+)/M%UL!;3
MFLQ9J1/$ZKHRC3X'RW,1K6O1[T?5+EEZ[;.6*9LHN(IDBD'6KEX*FAHY2!:*
MXN2Q)VF3;NT>;XIM7XG4C3FR/IFZH2J.);5Z[9)^^_:!/F*1)L=+E,;E!-DK
M5R>,<(BJ"!">LV!,MCFU#@9O .OPZ=,MZ;!IX\ MU=)#I'#]ZND#5BEUFT#L
M*5UZ WB'28]NKMI-J;.C7@Y$(252B"8D(&@&5+VK=(F,=2-,=B4*S*YU@/%@
MU+DGP?D8F--%'<U3F"=GG\_GRXF;"UR$\?VDS/\(EPFW(3DK@BU@C&&@@F(0
M=2S LPN6&>Y"OM>6WO!9^_>9FNMGTI]P>\@Y?7$^)0F?3VNSK!?#K_6KBPFK
M0C!:FM.0<O'D)%H/P7,/3 6>N.<V-K\[68_F=(C16/(]G""_A_2)C/SIMZNK
M7D&S#EF1P@&=8[7Q@:L=T^IXC>"=#1;)#FO=T/(..*?'BE:R[R%A:=$3Y=-D
ME%^>?9Y.OBQ<I@O&2AUY<KJ.6:F[F)(17+UDTM&A#2%Q&9J//EX/Y_1HT4KV
MO0S!6+/T91]>]%BXIVW,^B! (9<0) _ A)$JJJ2X;5V%?C>B(R)'FZN4A@KH
M8_1:2N=GYZ-:&G8U68:^'N%%ILR5Q)FUBQF@PR0RAMJTJX#*,8(7F0[%(&JK
M=EN,:]Y*N1'VDZ/<092Z3U^Y!NF1>YFCRI!T4*"*S> U+R *LZI(I5+<VQ7X
M0;(D#K5O=17^6ENG:83IHKGPYV5SX3#.8=E<>/2]:]0.P:8N']\@[K3U:EKU
MZ;EHSEO[[GWGDY92"*45\#JN0<5H(&;I07JK0LXA1MW:CKP=2;M0TP^?O[S$
MUC'&Q+D%B261SV\L!%LD,++78F%HN&S=2.4N/'OKS;.[SM>'D784\[&$CM[A
MXE1]&VACO))^/OOMV]6?+&XE#<N^,!%HVZV-:ZT1X*2N+1<,.1B"*<]:1Y V
M1W?X0-*NA+A18-:+8GHP:J[B6;F>FR#J*61T$\UA(D1]Z>\.FNP@_/W00LHD
M2RP$Q=HZB\]G<-P+\#ZAT@R=D:US-?=%AWNB/H=C0Q>9]\R"BPB$#])DIX 9
M%4$E)<'5XECD(BK)G/6R=3#P)HK]>S>[ZN8.56\AV'YN7JY.0R&:9[R<G:EX
M*D$9R,[72R%-?G=V @B7R/5@-*)UQ?$=< Z0*=G>%&TE[AZ8\)P<T,DWQ!5'
M;^F(KU-T+#F$X&J/PE!'YQG&0!OFBR3BTRO0F _W@CH)5K05?0\'PFI"TI6<
M_PM@P85L,'&(KO;9DBD31&LA)1Z=<0SI7&R_1]P.YB2XT$;4O;2KN=D@ZX*I
MWRXP>NU85H+1SB7JT S"&#DQEJLZ#4%I2UM98SIL@NLDF-%< 3W$^1;3$%Y/
MYGAQPEW@*DPJDX6#K,@V5E&0P:2# 51U^'I6+/'6MUGKL)P$&9H(NH<2TR[3
M]7(I.?M$ZY?UIB46#:X$!T8SPP.7'$4/9\?Q#CSLW]YLIHZU]::]S#O(]7*.
M_OUJ$L8O0MH]CK+9!S><<]!A!8UB)Y5#+\>S^?3\QV!<],78I#-PS\C?#)%!
M0%^@*,V#RS*)'EI]W IE]^8F5S]V>7EKF+&JU%$=MC;GQ$PVDJ0EZE+G=3G#
M=&CMLMX"8U^QDA8ZOMFL9#>I'DN,Y.D4\W"^>M>6EW0VB2AYDL"=)=NHFD5.
M6MI(E0A%A(0%FQNG-U <*N:QLUZO6Z.[R;<')_5'1*O;NDTP]134N W/8<(:
MN^KJ3M7O(.A]D0#)0?9,(@A'EK#2Y$,[VB,AD1-M9#8AV.8]5?>F_'N"&/O0
M?1?Y]J#S]YC.IS7)+%XD00LR95U(!4+)"*KP E%&"3YRBT9YS*[YD.SK( [0
MNFIGW=SHB+B+8'NXH_[Q$%N06:,NA$A#"*%.YM46G"+3I]A@@C L2^S7GCVE
M0WU'^?9PZ_@CHM?A[")1?A-</1WLZS =YG#?56=W4F!'@?>PV:_%)WCV1C$)
M,5G:FE)2$#B]1DZFH#DFDW3K"/5^B7#/0;\O'G21<^LZU.?/GM8;E(M2I\AK
MK9N!Y#,C.R8;.H<*K38S67NK"JFO#4Q94W+ZP\?N_]QN(^I)$SGU?FA?- -[
M%^;XO!1,M=OV6SKRZ&?A(PX0(U-6T9I-C* ,K3[PDH )(60IP1;6NA2H$\!#
MTZ./6YZ6.NF)0'=,7>?)96<9@YQ%6A;"^L(X_56R0N>1BLT;X]^-Z'0HTDCJ
M/9@!]6+](E2R'N5EZ#QJ[^JX)MH])2BE.,1@#!CID44G@Q6M;8-. $^#,?WI
MI(]"Y8W TM97.%IF@)'?6^<_"-KZ' /A!8KD?<RNM7NY&;*?B3*=M+ VJZ&W
MT.3K,%T.#6D4D;SQ>8T#D7?C[3G^**,N7BOBB",%*E<R.$QDW3*3DK,QFN83
MZ_88?T1IZ"0L""S4U155&R]D"3)[*XH50<M^5W<4\<<N.MXD_MA%JD<<?XQ2
M!8&9[&9?AX'4W(J8%$()/*M$/IU+K0=\'G?\L9->[X\_=I'OOD)/FV#Z&>./
MG72U20QJ&T'OBP2:C!?'R'_F7I.IZ^L<$4F>=!TKQZ7+-HG63;*..?[87/==
MY+N7^*.,MC#&:6-$:VL[%0X>4P2,B*&$Z,D,^TGBCYUT<V_\L8M@]Q-_E&3C
MY-IY(NAZN8J"$"F)(&VRK#"IVQ=)'7?\<9=#?4?Y[C/^N FNGS7^V$EGF\:=
MMA'X7N./6$P40M9V>^3JB*CK?98"QS$[U([GGEV_XXL_]L*#+G+N-_ZH?.&!
M:0LA<$?+JY-L5%"T\6D;)8\^BFOUD \M_MA%U.OCCUWDU/NA3>8)/CFK11%D
M3#B9&2U*B$C&A'182^L(9M&H9"PF-*])6H?ET$KOX^YF2TFO94!O][<7[6 F
MY?<P/Y\N2C,FX_<X'DZF+X;C,$[#\<=&=[N=GM7XWG?[=?9\)\QY4"$["\@P
M@$JB@-/D']J2-'&E1,M:^\=[O!..T0>1 E%>JEQ;KPKPEMQ=H9,J3D5N1.MK
MOR.\$^ZBXTWNA+M(]8COA-&BEP$Y9%^+[E2I Z+1 Q>UD+<PPUR_J>G'YCYV
MTNO]=\)=Y+NW<H0-,/V,=\*==+517<(6@MX7"3CWT3OO(#"NR20R'*)-'F3@
MVB3EI$RM!P\>\YUP<]UWD>]>[H31>N62T$!F-*V0^4!;',=:HI^-X49F_;/<
M"7?2S;UWPET$VX-[>36%Y;M=_0X_AV^+!OQU6MF03.O/8?0.Z_+IL6_*B^$L
MA=%_8I@.=*#U.C**/,N1O.PDP'G+P&1.SC:JF$UK^W!7S,?CKNYB5NY5<X=E
MWLOQ:[)G/_R!HR_X.QFWGV:#Z)P-7'@04=%+F"*!=UZ!X5[DY$V=%G$XVMT$
M_--Q;D>=]7[W_31,I]^&XX^K.YXH74Q&6=!U2+W2*M$V7+OT.XDI)T>;N^S5
MS?T1SVG0I9G$]]/^_OVG,,6T3.*<S2?IGY//BP3.,,Z3VK!H\;T8R.&NHXQG
M+1(G=WUD@SNVIJMNUCJ?,/U6GUG'RY%='I;DGX;Q1UQ.+OS^*V^7F\^3/\(T
M?^<M"J6XLI),*B57-\$F(1@6C%.!L=R\$F=WU"U;\M^#9;8.S/(B@PMN')+X
MG#:*9(@:'$,#):/D"E,)L;59UPS\_IK][Y6E=PT&V)^RC^4V<@G_VVI\J2N<
M:<EJ?2 6.J4P0Z@=B;4P@M4L?BE;3S/_ < QS +8(P>N]VG;6A=]W%UL+8CO
MRQCG.K'G2BQYDS7U=.G9QWH.<VFZ TVN;WW'HN.'PE\K=>;<6#!.9E#9:0A(
M_I?6610Z?]"SULTJ'PYO[[GO/7+:=E%MZXRB!=B_D0XN!G4JYTM)5H&T9,HH
M4R3$2,(BF\:F:%PI5M[G$]WZR8?H9WIH94U:2;J'V[MWY$=.AVF.^7WU#Q?(
MWKW_VPI<+#&'&O<LB7M:)B8(0BM(+A(LSZ*2K7OMWPGH)V9/>X6UWD3>XK1,
MIF=AG/ [M(OY(B:B$JK:HH)V6RD]1$\LM\(6YJU*ZGINS9K]Y(Z'_,3D:"K_
MAOGK"US/L.!T2GR]OO591[341%%AO 5%"P1G8P;ABU"92V9CV(@4ZY[PLS.B
MB>1[Z,__?A[F"VG4.:KS;U54DW$5SL(R"Y%[68* $+,$)7BJH^]J+W!NK?6V
MCB1J;>/>!>CGOA-HIZL>ZF*N85J]+YN ZLG)OQ708;STAHJ[/BBHF=1[<+MO
M!\<\.J,\H1$N$J3 (;A,KX%517!AA2ZM]Y0]4N$>QW??3.@B[#X2W29G9Y/Q
MP@1:'7?%:TT>/@,Z\N@ +3%!-%R##T5S06=H"NWG 5T#L7];I(%R;LS^V46R
M/7BO"R@O9[-SS,_.I\/Q1[*!AY.EO3.[_=0<:()6;.$02ZGQ:AG(%/:E]@T3
M47/K.6]O7G2&>82F:\]1L)Y5V<?4RM'B=U;V]0UXS[_6+W$@R)Z6B1M@O)#U
M9:,'+ZP'K4(UW[WUKG6*TV;(?CJ.]:"P0P0.U@GI]63\9I'SL=SYOV?LS/Y*
M_^V\3CY0GI?H#0A>ASB)C.!K:VZA=52QA&S$T213W+N:GXZ^1T*,'ORXK5>V
M^./O.)M?'AA\4 SYM8*5.FV0T^N+9-H6PR QX9.QM=M'ZV:)+?$_TGI?RN_A
M9NMBANY[G'X9)KQ]:?0Z?B'4N%S [,-D'D97?_YT,IN_GLS_$^?O,$T^CH?_
M36\H.L0DC8%2K_>5DP:\-A(*:N]"L2;RUIDQO2WFIZ/X<="BAT&;O2UL^3Z_
MF$Q7WZJ_QP?D4QI7QXJBK0:_$ @NV ")9Y%#4-DU;[*]WQ4^OAG'0Z"UTT5W
M2;+X08S?A;QR/=[C?#ZJ8[>7;N] .X$E.0G<$F;%JZLK-!UI3FN6"BJ;KYDR
M=Z5A='KV3\/$?>CF)I7,WJCT-,P^#:0*,:>0P=AZ3Y=-AI!\!%GG:+$DLE.J
M.9'JDQ]IU$PO-TED#U\\L_CU\QI:WE_US,UG[K]\YIYU'T_]C(VL6&DB%$7N
MO3*%U3YH%C23A7$K$Q[/E<^KXZN?$384)7B 8+0'I>B/*'6!E.UBQ C'ZSDJ
MC_4S/;.TO_J9+LH^SOH9HU!8Z^@445F#\LJ!9U)!UD%Y@2&4YNT=3JQ^IA,'
M[JR?Z:*+AU)_L,F:'NMG.M7/=*+)/@H1MM'Q0^$OLA@+%P$DV=VT-I8@>DM;
M3-&&.<Q<-6]T]G!XVZE^YNAHVT6UO=?/)$9'2""_3D450%E?ZG!S!E*1\TBN
M9.&,;>YOGUY*<R=EW5D_TT72?60@;6O[W@C%OJE>YH=/816JG5U>>KZ;C$8O
M)M/Z'PU$DJ488<!E7L@ZR?36\2) 2(Q1(+UXOG5[D_VN\ CYW;/W<KP$.J;7
M97T*PYOS^6P>QGDX_OCZ?%E2%[0R3C 0NI ZK!404-&^$$LP(BKEX]$D '18
MUP-Z-?; S?YS8W8CUL-*#',QT<'K9>V+;T%QA1"-SY"DUU(8.JUEZ][7CXEA
MI_*B;$.B8THB6[^RYU]QFH;TZP-.?HU6B0/+=>03+Q%"[:&6T10A>1"R-.^C
MU.-Z'E^1_;XBVQ&IC]++]FLCD1<<SL^G."-'[_G7S\/I:F"R*(BUN!BDR+6W
M@4P0,J<%6R83.69"Z];M _:YOL>7:+\O41NB]9 %MQ?CTYI<))8,V='*E$H)
MG'$<M//,B!"8UGN_NFSNU6R=!]/Z?;B"<\&UQ?9= T0K;3CALF'D!;" N::(
MD,NOZAUHYES[8HK&>],>#KN$![1[[7;3\H"8<DQ.XVIY3W)>T"*,G@UG-;"]
MV'XCB2.D^2!E9=%&)"W(&@7P!8)4$;BS+&HCC6I>5]WK@GZ:E^+XZ-&Z[4R_
MA]<_</CQ4\U(_H+3\!$7+O"S,,<783C]>QB=XX [,I)"T&"EIK4SLO:=L@EH
M*RC(13#!=,W=/<A"'M KT9Z338Z0 Q"JEP!G+[=&]Z\;HU2"K'C(/M;YK9X,
MWZ@$&#HXT3H=O>&'>I$V7<3C2_3 B/0 3J/+.Z7[5RZPQ.*B!Y,=UK: Y!HK
M\AU#8BBS%B[DS=KO'709CR_1@R-3PQO,OE:^]E;I?DE88U$G$D)9E "9("%*
MP8!'8Y++NAKEAWJMME_6XVOVX,G6\([S*$S?[&(LT5A(IK:G8+4CB[6%I, E
MVAP9]YMU"CTJ7^JHE/#CW=4&*A'*QY 5A)!$O=8B8PI-@L*YBDY*G:]WZ3R(
M2CHNZP'M?8>\%#TXH];:%8>LA7SR\>,4/]*:B K3X7@V3%_JPO98&7D?@OW7
M27:2R?%43<JB7(BU[,?1'\IY!C[7^&*(Y#)BD9PU+_O;&?7Q5$T:IGE)L@!;
M),K)H,$;)\&I8&6)G$?5NEG-SU@UV86E_55-=E'V<59-DBUIN;41K$B!5D!_
MQ$0>0O(L:"=MS*5UPO")54UVXL"=59-==/%0JLXV6=-CU62GJLE.--E'^=DV
M.GXH_"T^2J.0 =?UZL%&!=$Q6F4L"H5 32O]:7G;J6KRZ&C;1;6]5TVB#B45
M%B&8VITK.4<>('JPF!7YA'2^F [7/*=7-=E)67=637:1]#&5@=W,N7IYX5<N
M+Q&4\EPFE/1N(8G(Y0C.9 M,^>@3ILCLT61)WK>8(V1MSS[)4="B+[['^Q<6
MURSLRCW:CPOC YF\+XM13LG7K)!8P&N7(!EF GU/DEG>!^%[6<W/R?C#$^,(
M\TXO M*SE^-E*\]%U\]KK[670BS:._-2N]]JY'0@%A)]+,BCUT++O8_#;;"N
MG_,U.":RK$W_.6BOQ<N_IBM2VF/?Q3N??X >C)O+HU%D8:-NQ:LI(_35FW*]
M'W'M5#S[_LX$I]$YBV!2+9LEU8 K2D.,1F0AD[V1([R??M:;+Z%=S*$-L.5U
MI.<HLU42ZN3,.A@H@>/1 D],<15#+HJW/A?Z6,B^8A&'Y/7ZP,2A&'$L08J7
M8]K7\')ZWZO5.A<724KJP(6/9-/Y.L.>2?"23C3.ZHT[JA+1-&;X'7 .'\ X
M&%<F_>BL!XM\#;35W=(FX'J*4=P)[##!AF9JW(P>.^A@[T2).H>"5D,)RH(B
MRQXBUJW>,,Z%P>!]ZV#  0ARSZW^8?C11?2]#%:=S=^4]V&$EV/E2S'.<@Y.
M.5$;!'AP67L05N4LK47.6N=YW "Q?V>YH9)N#%C=1<(]7%R^PQG2!WYZ,L[/
M\ N.)I_KBE>C#"YFP%KE66U'@-EH4*7.,-!,@XZY1KM\%JKU)<P&L$Z)%JVU
MT,/>\%<<XS2,".&3?$:BKKGW\^$7_!$D6A>CUQ9$G7FAN*A5(YD!SU%8)TK0
MNO4HU(V G1)9VFNBCUY=.!HM4X1_#]-_8IW@]R,^R8I;F-]6F@3*IE(S_CEH
MX1E]G_&@FX^MN ?3*9&DJ?Q[:%.UX:1>9YTNR 1PY\A3$P35.6(Q'8TY:6&3
M:7[/<ZRCE8_I"J<'[:VU;9I>R+_#487].4SGWVC;)+QI<0&]PQW[?1_9X-J\
M$^I&-^&K9[ZMS_SP_9G?^9.*X(YY!9ZD0?:(%1!M<1"#Q)@B#[ZTGD1R'Z9V
M=]5KGC3[[=L//UD.%.$I)*T8,$W&NV*+U -O@<>2M5-1Q]#:YMD*Z+[NFILR
M9_WE<5\J.I;+X<W6M[B0R(H)Z[FO5YFL#IEC$+6F33T*%Y)C2&?Z?E[%6] =
M_NJX-Z;<\.)ZT5@/SMQ5/"MC<Q-$/5T/WT1SF#OAOO1W!TUV$/Y^:!&3<MF8
M6 ,D!,^0,1>E5,!#B"E9<AYLZ\O@?='AGAO@P[&AB\Q;IVP_Q5EM6;!R$D4J
MC/&2@"LAZNH0?"D!R/?4VJ"O^4 ;Y6O_\+'[]YUV%?*DB81ZN;Z]E:0+5LHD
MDRA>@\D"R<,7C*!% SH)+NH4'EY:^\YWP/GIS8#..NGA5FX-M-4KL0FX/9@
M-X =E37078V;T6,''?1L"=P$*4+(.2C:Y6J?6U4*G7<\%,@F<Z.LDQCVY/H?
MGWW0,S^ZB+YY.5<-6[XI?YU,\FQU"UF;'"WZ)2]OLE>'8O2$TG@.QA0+*K :
M>[ 6<HR2[(* QFW8-FO#)Q[6HMA12Y.^1=S0[EB ?#G^@F/Z^;>WY]/TJ5[^
M7H>ZN@"^B''SF HJ&VH[4UZ+T6KFN+-07$+N:17!;V9&=GWRR?"B5Y'O[_QX
M<C8YKSV$RI7O#;ABDA7I@3EG0*DB:PRB=L%-5D63+=K6!4X=X!T-A=K<G_:E
MF!Y\FP6MWV'"X9=JD\]>X_SI^71*[\&@A$)^=49(/-9.4C;7;OL,1.0:(_*H
M3>ODV/5H3HPAC<3>PZ;R)*4%2]^&;Q79"A5M@*\GX[2"F$S@V=.BI:JIO5%D
M".3#@4_&II(E2[HU,S: =6(4::V(/15C+>,RPW&93,\6<>K78;I,G=FEQ.K^
M3VU1.-41>ZM&:\O'OL.*9E%T??G\[TPR'$TR.H$M9&\H)B(QB7R?XA&U%[R$
M]A7Y&^!JV"QM_=-^^[;ZX?+:*$=)IV1 X,+7@=7&0^#!5'D4SK7@F3>?LMD=
MYMX:H+5FSQTMSGI1T;&$@B\3Q'X[GY'@9K/5BF:+RP9&&K2:9V"%Z=J:R]*I
M7,O"F>"<"10H6]_&W GH\#>]/;'A.ON:::6/ZOPEEI7?N0F8OOJ3705RF)O<
MAHJZD66YJY3[5WV2F+76)*;:'24$,L$XAFKV\<@82IN;STKO7^7WW,WN3>,=
MA-MOI-85DWV@PU,$YLA7CS61L]0QDH&EY-$SEA]"I'8'^:X/TG813L.+C%D%
M,AG/)J-A7AP^"XMG04&-]-SB"V2.]7JNCM@H+$$2WELKL/"R44D-/>+*&SE;
M:72AS?5//_4#NI'<&\9?;T>T(ODFF+H<SITY<8BSN96.[E3Y#@)NN%O?B<UD
MC9G+!*Q6H:ML @0E,CBI>=!!:VXW&CM_5$I?<SKO4^==Y-J##?:&ML50=[8+
MPV-U$EE:"#.:5N=TK;H1M8,R=Q"\"-QB]-*WML;60-G?T=Y.3]=OJAL(N8>X
MQ7(L<,TWJJ=;/<4N\ V\%;F(($'66A@ZV A9K@,QK#%"V5B8:UWTMA[-P8R[
M_BZ$&HF^CP:12QR+*&U>S(>ZF&GU8?)J,O[X:O@%\Y/9# EJ9$$:8Q44I6I#
MR^3!I2! Y.@59QA1]G2AN@F\$Z1-7\I9>[#T'-=X,1R'<1J&T97OQ6]QY0NO
M+B6;QCPZ/;&7>,CV:]YGK(2'DKQW$I@L-:^4%0@B)> HBQ2HB];-&ZT?;:PD
M22LM V9<O85!\NRR"" Y5RR(+*-^C)5LSYXVL9+-573H6,D=SH5-WGJO$AA5
M[4%%8O,B&9!.\&A%H?U[HUE//\%E2P=]WW_9TD7N^_*W-\'T,UVV=-+1)H[W
M-@+>E_+1:<=%L(")%U!)NSH?W-;2CARX9 'SSW#9TESG7>2ZQ\N6[!/7AGP
M%I@E6)9<@EC;7%AD"55)!EOWK3KNRY9.>MKPLJ6+D/N,K3P?#<_(!5A4=*V@
M,:X#N6H<R@(:9XNAPI:T%K0NR@B9-LH%[/*ZWX3Q@'7?6LB]M"R<DED3YOAZ
M,EXQ\^(6T%J6G>+@-.H:]$L0@B>(3+.0,(@H6D_X7 OF 7.@K:#[Z#1V9ZP_
M2,>#EAZD$:I"XA",+6"<$<A$<EDT;\YR.LE1W=V!]EKII3G=U22#3<#\K,E1
MG11U9ZK,-E+N/3FJQ)2=]X6VKD*6,&V&$(ICD M&]%PZJ9M/@3[RY*AV&N\B
MW-;)4?\Q_/CI[936=CY%.@[G)*+9^V^S>A9>Y 0I;YE+M2JA)I;8VL2Y#E,*
MUMDDF'-"7W,.UB1,W?NH0R=1==+#I#<AMJY"_0\,7[X].Y]_>_/\]PLX6# 7
M)4'7LTJ)J($,$0$V:"=848+IS9+@;G[VPU7B;F+JN;^,3"5R\A9M(NHH3JOR
MN1 27]"FVDH]/<"LQ:UUM;UP>ND5\@7'Y_B"%KMX^4.:_V,X__3T?#:?G-5Z
MXS0ZKX,8:UR4_I<_A*^#Y)72V27@C-?+@$C[@;<:O+(V,Y6-EZVM[2U@'FD$
M>Y?H3M_*ZB$C8MD*?]'IX,GXLIS]_624!TGEDNH@MY)J-IB+ CPK&J(1Y(\$
MC^C;N^[KT)P@6QJ)OH\N\]/);/9V.BG#^0"U(J,S:"@\(2B4$5SF!H1P3CMC
MA6N>*W?E\2>H]FV%V\OA<L?  UHD"E=O&J+,L8[!SN"%=B"TT,D7$YUMG1IP
M)Z 3Y$([!31L#K\P@NY$]B3_/SK2ZC=>3*;O)N>+4= #KLE2\EJ2:>1K58>@
M_0J] ,,2'7$Z&A<W\^6Z/_N$J+$/Z=\DB^IY,,E 6"V$9V37%%?-:.7I1$,-
MM/MQ&5!:V7S0Q#V03H@S?2CA)D=T?]-(!CGID*)R(&O*J-)8^V!X"_C_MW=U
MS6WE-ON^_X4S_ "_;CJ3;78[.[-M=K:YZ94'),%84Z^55Y;;37]]0<ER$OGK
M'(OG6);?&\?QV#H@'AP2(/  MNA,QJ$SN?L5X$/2G*!E=%+]7:-PAQK%>_J\
MHKS F_Y'O/S_;K]G(\YY19LN&[0^,QJB=<6)(DD*2!@%.F!9>?6Y&E2IE,X6
M,E"T$S27*4"Y:SN^6\G)KNW:&9]]/BN*(F'E'2XHX+U.1E&BEM%4F:7LWI)J
M7X@3M(?#%'T7^=!SU^#O+VAGG=\8:^N^9W-(;8H?+Q:* Q&R)T$Z0_2@=#2]
MC6&(7"=H']WAN&LR\;"FJ3?<$EQ=\OJO?B!6 /U\N:857:T_XA_?;7A[<I=(
MQ9A:1? !!9@21%2MU,9JE6*(I(P:%-<<(,0)V<RL>-QS.7;PE>FV ^PORZNK
M=M'[X_]=+]9?_D;K\V5I_4&WD=G5F7$I9I.:<PUL[1:=",1N%=:0+.2L2NX=
M\ P2[(0L:3I [C&;"3ECWRBD38N[S(N+K>4O=V5"/_[P\\?W[];+ML:T>5<6
MFS6O\0\Z9&I:7P'Z,<JFT,B<!#-+E7SAW0E-*\9#PV8&@41-17NO7.X_K^58
M"6;!!B2KE,BAM<@NCE\[G1IG4]M4G$;"WD[8:R>8C;&>'@2S,1 =,<',>+0R
MN"!J;,M@%T'PRJRH+FH#U2&O;A)>R6NK*!V%]],$LS%ZGXMC-$2FMT0P&X71
M$++1<Q0\%_C61*HI)!&M;E,9+(AH IM[=3F8Z(M6T[3U.BZ"67?,Q^AU1H)9
M0O0@E1,Q.!;+M>VL:A14M86$01O5>W+!<1/,1N$TD& V1LF3E"D]Q'LQMACI
MP0D=)&V3Y,&@%K(  F8OJ[*=T3]V@M$A^/=1]!24@4?KY:W,/K5!/,'ZEOWV
M6<0H480278"B0-+_=U_NZ [V1V5R@M$08=XJP6@44(_239ZCY<D)1JBE2<9&
M48ULXV%1\N&%5CCKI8K)2Y?>&L&H'^)CE#LMCZ'YNRFZS >=+0)BD@)3:HY*
M4,FE8(W<@_DU\!A&Z?=A'L,8Y?0F"1V2[0$#:- Z84&RW"40NS51"LB25"DF
M56<&@7IZV;?GW!/.BD=O.QJ29MY61U(Y,U2\1Y8Q)\?^:FBCI8M"UE.V[+%6
M\"X,,IPQ3STU2YE,XQ.<^?<G_GXCO%C\E\I?69DM6?3A\OWBZO/R"B_. (RS
MKFI18R/9.@YKHJY\)"8=HY*E5-F;VC!6QA.RIUE@FB"*N+T1:7R=QM2YK8%2
MY(-N26J+IG*X5*T( :0H5DD7@@QE6-?PYUP\[0MS@H;21_$=B1$[P7YJV>9/
ME]N!>_G;P7X[Z]V>J(W>YY155@<M5"8^+EW6(F3^HGDW!!VM0M>[;'6$>"=H
M-5.!,P%GXGTK;?AZA=?D^[!J$F[GP)YA*%(5]O>!@,_3J%J'.&V%=N@\^9I3
M]P'O3XAT@O;2$X0).!,[K_QF[WM/:7TFM80H-2^7?6T!26:14B312O4->BL-
M]O9;[A'C!&WA4&5/0(_8B;2M<;L1[._+R^7N<&QE^-(E#1"#R%X% =I$=HZL
M$N2-]!FD@_T&#MT,XC&Y3MA"NL'1D15Q,Z+^VUK(UH5@<7G-<MTX4[S5[:+]
M]GL?6[5<&Q>\[2MSL5'9=H7WLPS!:$HF&T& U#RO)%(LO,B ,FGGJS)[6\\#
M0?6T<IZ0Y1T;JA.0.9ZQNA__6*^0G[^XQ-67C7+O7^^90Q5L:ZNK8F&5>]6Z
M[* 3TDA;V.V+T+W5_X3+.2&[/C;P'V2<3#PE9#O0I.L8D.\_<I(Y'X](/6>=
M-8=M&!P8$2*T-GDA"LR4A4J08G8JYMJ;9'&L==9*5J@9JLBZ[=PNA VM6Q1I
M?$PQ9+7??>'-UUF/L9X>==9C(#KB.NO"_H$++@M=G>9E4."(N#B1 Z$&D[W9
MY\.]T3KK47@_76<]1N]SE=H.D>DMU5F/PFA(S>US%#P7^#%*"*:U'->;L"$E
M$65F ;,SIF@$OQ\,O@+0Q]=9=\=\C%YGK+-&ZWP$Q>>CTT:T9*Z(6$'D8MF3
M;J/<0^\>+<==9ST*IX%UUF.4/&N==:PDK2<0-I(3D-MDQ\W-5I;62,U"0^^F
MHL=>9WT(_GT4/7N==?$05)%2))0LG"HH@BD@9'(V6M#&^>Y#44^ESOHY[F!_
M5":OLQXBS%NMLQX%U*-5M\_1\O1UULK%ZMD)BB9P0.V]$E&QC+5(=$D39)SH
M.N9HZZS[(3Y&N?,/<B#OP266J8!M)3F\C2;(T$J5E335&)WW:A5>ZR"'43B,
M&^0P1HDS#')P"4DA9B$=L.W&&D2K[F531K9:'9)*3]Y.'^D@A^>#>)B:IMN"
M!XU-ETF'FK47Q>C6;YK88W7),&15FI*",MTK7D>(=Z39K8.NB2<"Y\&W?^)L
MU:_L(O-/EG6U'760OGRBY:<5?CY?9+S8&.NF4KQC-FO<(R?)=AVPZCFS8=Z6
M$+5OO?60OQ!O;^@LL*': %AT -6['OE8LV'!*0=515$L9(ZUC!?L<*5VIDJ;
M= Z!NC/^7GDV;(SU=.DZ- *B8\B&W?KY?_WFW=\.:_,&:@I5F!1X)8TCGP+_
M-S42I5'!!]MCH/6# KRF2Y!1J"][:[]S9N1F9=^*M/,O!PC5,2_VH"#S)\8Z
M ;6<2LNSF4"FD#RV@6,F<5@ -7+D3^S.68 20S&^#&I+<US0/Y(>FQ/Y,<KM
MC/B/UZOE9]K-72_.5&HE90$LQP::P[[6B]80&D6HR:A!.;$G0/[VF?,F/SI!
ML.R@O\YSZ]]=+7;<>)6TI8!!<#3'4H3@6^N<MA1E$]JLBAU$M'D"Q:]/?.T8
M/E-WG=_$=[_3BA>SNSU363JK0QN4K=I 3=_&H 8GJ@^Y5B2/N4?_Q^^?^NJ1
M?+X.)\@D_65YV0+M;>'O;XNK?_WPY2/_Z>80T=EXEW41(8;6OUD";Q45A2((
M4FD5S#!X1R6@'Q3GU'WNWHC,82Q-L)O788AH$R4A'Q'K95*2W2!\RC0.U/\$
M=^./B9C 9U>T95^C*@'*&1&D"P*]"BP>4BK]QYO.;!I/I"Y?PC+&J'V*T::W
M1^<=(6^.0)FM!V.UL"[(;?T-MNH^DI57#:KHVMLNGA1J_LQ(-PCOC*CKJ?])
M*N#NO!,_T&4^_QU7_]J\&%(I90FEP-C*/7D/$UB5$RYG-!9"E-"[!.HIF=ZP
M,_)\;"9H#')7OIUT-V_.$/GF<DOV9#L:W^0 1)\TEPYPS.&E[,L9@)P'5UI6
MAC=<2DK$UL4OD'28D%\G[$UB?1ES&>^OS&@M8U"8HLX#+^CJMVT"^M?5LESG
M=4O>W9R:-17PUJ)H(7HC(1C>5F,5):: VE?C2O?<[V,"'8''<A!^^PG.;LJ?
MPV6YJ5? 3Z3.2LZ1%^>%T;X5(%(4L?#246>IH5:6KG=-YF/R'&F-SR')[V[J
MG[6HYQLU?%RN\0);$5+/$IZ!#YAD:-C@%4U4GK.IZ+J=7,8VQT;VU=A:?6%1
M)HNLF^,;#1M;34ZP\\O_:.FDG:@=]3 !#]V/OA_9]J%NZ]M:>X==)+#\RJFA
MLHT+;.$714HIM$G(2HD<3Y8 @HI5C@A [C=O/E@ISY'SI4IV^EG4_O8U.5K'
M4+SS '4SD"+0V0M75?,+J(C$*Q-HR6(%UBKTR-$?%Y5]>L"?YK*/4?Q<=.8A
M,KTE+OLHC(;PFI^CX+G ]S7%4DT0QFW:_&G>08LF@9Y4M XR#!LB=52@C^>R
M=\=\C%YGY;(C:5^,B$1>@&X]I4&BT!@TF52!8N^II,?-91^%TV N^W ES\IE
M=PJT)2T%Q^SL+E4.U6- $D:6JJ-,5L);FQEV"/Y]%#T[EYTE 4N^")(4.#0'
MCLK98$4 ::NI$D+W?A9'R66?S1_L#\OD9/8APKQ5,OLHH!ZE-C]'RY.3V:UU
MI+&R4#JI-C"IBF0J"*4\I>RSB:'W(7'L9/9^B(]1;F\R^R^+3^?K1N'=N2DQ
MVAB4$D'JS(>48H<E)5Y5S$7KY*HQ>PG]!VC.>Q_\TASG43I>=E)0=UKZDZ1Y
MHZ@:;VP;!D)LE'P<A12DR*YJ2FR1[+P,@N_H.P\\&]"^2NS>7.(>2CTO*4M(
M0E,+0U%S!,K1A$@Q5)^]SE#<,$R/KO/ \T$\3$T3N$HWO/4"L;@:89/N%. L
M[PSHK3 YE1*++&Q$G0_*8^D7,-VM_#-T.T_Z\*?%)?)JD?_T:KVZWC@'MS_[
MD"X6G[9=NP](((Y]1(<4XD&KZI1$_+ ^I]5?EK__OM@TZ+_Z:DA:!\-!516^
M-86 S'M&K-H(0U&'('G[V#_B#K^M>DB8@V_D]CYX&TZ:BB5:CA]KAC:#&CB<
M--7SQH:R*I^@A-[9OWL%F2N]UP?K.Q=Q!^OVI7-UV\&US47!O+[^[M6[K4P/
M6DNE:A!1\8X*%GA;-=D)(ZV5*?&+B /'_#[ZG)>ZCND XG(:9?9V_!X6;9<P
M&B#<_;<OHQ%_B6N6[O@,P_T Y<YN ='FD(LDT9JILO^#1B1VB$1%KV4E<-6J
M(T;^@=N6EP5^C$XGN&5[EW,;K'?U*WYI.UL;)IPS'RGEEP4F]J+7"]I%I=%6
MM+Q442RO'"RU+FT<.EFMD?UGBTKUKGL>+MU\T<<$L.Y'&]-@,D%2[Q^4KU=4
MVFB^'5\HUA)#\B(6CHX T/.+XJCU2U:8M<\A]1Y^=T>(4[*%PS3<^X2XS2W_
M0GBU&[AWFV!F.\P6VO3?"@*J5OQ=9CE15Q:YUJB&3:-[["FG@&U?54[#Y;Z[
MZK,<*22;V^9"U&X_VF0%781TJ%VJT=*POASC:M?O"C+_1=,T\>'A6NY]O7^_
MM?]&G_'+-OAIA=QG";0Q0%)8-G !C=N3P&N1C<-D5#)A?]#Z*"]P[W&O'>V)
M%#L-\>VND.^OZ>?+O],?ZX__H8M_T]_X=\ZOSGA["EC!M?XF'/\2^\01D83U
M"J("J668H/O'0.E>N\5,C,=<Y\5&TG^TV_C"'NS'\\6J_)-P=68HNP@RB.*]
M%&!<%%':YLYHE]EE#91[=ST>(]_I6\^!F$S#U'Y UI^6UZOU.<OZTZ*NSS>R
M<FA3.-INMFY:R@Z32!B\J*'(JJ3**'L7BXZ1[_3MYT!,[MH/3&4_[^J:5E^E
M#&V@,D86*_K(NV2;_A 3B$#62N]UM6Y057D'R_E>LE.WF0-PN&LM]M$TZLV/
MVY?$<=6?__0_4$L#!!0    ( "J*05O9#K*(B\L   HD"  5    =W!R="TR
M,#(U,#8S,%]L86(N>&ULW+U[<]RX<C?\?SX%WTU5LELEG"4)D 1.+D_)MXTK
M7MME>W.>4ZZWIG"5)CN:488CKY5/_P(DYS[# 4" TKXY%5LKD^CN'XA&H]&7
M?_T_W^]FR3>YK*>+^;_]D/TE_2&1<[X0T_G-O_WPVY<W /_P?_[]'_[A7_\?
M /[OBT_ODE<+_G GYZODY5+2E13)']/5;;*ZE<G?%LO?I]]H\G%&5VJQO /@
MWYO77B[N'Y?3F]M5DJ=YL7YL_:_+OU*1DZHL"% Y*0&BC $&.09(Y7DN&%0T
MY5<W?RV8@"BM4J J@@!*<P$H*C& 2!9E056J_VP&G4WGO__5_,%H+1,MWKQN
M_O/??KA=K>[_^O//?_SQQU^^L^7L+XOES<]YFL*?UT__T#W^_>CY/V#S=$8(
M^;GYU\VC]?34@WK8[.?_^^N[S_Q6WE$PG=<K.N>&0#W]:]W\\MV"TU6#^D6^
MDK-/F/\"Z\> ^17(<@"SOWROQ0___@])TL*Q7,SD)ZD2\_=OG]Z>)4E^-D_\
M/)<W9FX_RN5T(3ZOZ'+UCC(YT]PWHZT>[^6__5!/[^YG<OV[VZ54IX>=+9=[
MHQHNB>$R*PV7_WB.V,\#V _$[^J8UP#,->*^#\5C'Z;O@['[16L(&9_A'3*#
M66X_J-=S,=:WNR$UF/7X'(?Z+!8K.AOAL]B2V6%Y9G[Q3O_4D3$#]2C3ADZG
MNG=8E=]7<BYDJRWWADZFXM]^T#]-'FIP0^G]Y.-RP:44]9OEXN[5])NL5]/5
MPU)^4"\>ZNE<UK6L)UCD&2F0!(H2 A!+*:"D+ '-*D55EK&TX)/5YC.?R#GX
M[?.:HX:L,\T?'.1?G5G'2UDO'I:\W0$U'V;W;UG[]Y>TODWN.S82I?E(:CJ3
M__KSEN4PT,V> I"9$Q8?]V#8(9\L5+)EX"PV"[Y':69,@,7R4-H%]Y%VN\IJ
M+6XCJJ(U:^3MAOO96& _R]FJ7O\&F-\T2\V%XL]'$WZ]7$M&E_P"[MT3/_.%
MMHCN5V!O"@RPWA"L%M[?2CLAFK4?DL52R*6VA4^(N?FN_[A?KB9?EE3(:\X7
M#_-5_4ERJ>U:-I,3FF=96>82D)QD ,%4 89$#AA%6 A:\(Q8Z8 ^(K$7_4.]
M6MS)9;(RY)/EAN[Y;]L>G_Z%'DIJMY7=$$S6%),MR0#RBN[,U)C[T>7>HV8O
MOS[!T3M#UJBRG?G69SNZ2JA6<7I5Z#4D6MW'NP^D_LMP96<C>:O=S).-RDI+
MF#9JJ_?=4?24#?=KQ63UK)LF6NNZ3W+6F*+Z_/2H*<QKRLT'</U]6D\D0ZB0
ME(,,Z],U@H@#IL_, *8%X1)R"K%R,4IZ:$762QWEI"&=[-!.OAKJ_Z^;5=*'
MF9TU$@@)-UWE#8*S^6$A7B"SHX_2J.:&A<B'9H;-*WZ+^IVQ4>2'>[G4VGQ^
M\TY2O6"FE$UGT]7C1_IH]+Q6(7=TJH\PRP_JS;3F=/9W29<313(B<58 K+$&
M*%49P!E& !%(:%K!$I>YRYKW9R6R2C [UW)-UVQ>YMMRTP,#8+93$^. YZ9%
M6IZND@U72</65;)A["I9+1(FM9Z9BJODTR[&+8.)X3"<MAF.4B!E-("14775
M<, .55F $3T.4F_GW_2XB^7C1_VMWFJ2XK-<?IMR65_/Q8?5K5R^_GXOY_JX
M]JN\8W(Y(6659T*E !-9 )2I"F"18B EKEB95I(4V/J$Y4H]LC[;L)/<K_FY
M2NJ.HX3.1;(P/"6R8\KA@.*,L\5)+29Z;@IM"]S'+7"?=X%KV$G6_"1?6XXL
MC48_!!W.?C&1]#L4NB(:Z"CH"T3O&=%YT/$.C[[R[ITJO0?QLTROA9B:;XG.
MC'7P=OZ2WD]7=-9]]:P44E)*@412'S@%+@&5E?Z#YS C.=/G3>1B?/92BZR/
MM[23>TT\F<X3WI)W,S+[$;.S(X/AX*99=R P=(&&H*-\68<Z6X%6,@8R]/II
MC6K+68E]:*[9O>2WPM_.^>).OEO4C?O\]?\\: OP5[FZ70BC:NI58PI.,E2@
MDJ890%Q0@(J* 4I0"F!&65Y594IRX;+2K:A&7O&&>NOEG&YI)K3UV!D'Z&*9
ML,<FZ$4V#"9W#8=N^L .7ZIH)27*@53:OD6\P!I?;>ZB7.$"2X)SQB9'M^<C
MPFP7)_ G0;NH*,U01?5&!3E )8> Y84$@DFE,,UR*L3DFURRQ9-]S[O4K3%N
MZ6J #3/)CS/-SD\Q\+/;Q8)CXGI.:%$P#/S4?GD=/BT3R0X7X;8U)Z$#;6]V
M-$?=YIQ@.-SNW%[V=;EJV[F^9O5J2?G*VK^W^U),GQUM#JYK2@'-KM,B!'.H
M[0T^LI/LE&#'CJ^33_E]0Z_I<CZ=W]0?Y?+S+5W*%[2>\LTGA:0JM6&$@*1(
M 813IC<9A@%CDJH4JE3"PL5DZJ46V51Z+U?[NTIR+Y=);=CXJ]L&TX^9W3(,
MAH3;JER3333=I"%\E32DHRQ4*R$#K=M^6J,N8RNQ#U>UW4M^B_R]_*.[Q-<4
M/BX7<_TCE\T6]'$QF_+']L\O\OOJA1;D]TFF2DX95X! JL]+HD@!9BD'-,^Y
M8CDG>4Y=UKTK Y%5P6_W6@V8:R2Z82HQ4>^"+D6=S!>KY%$K"RH6]]JJ=],-
MSE#;J8N8 +II$,U)LF4EV>?E*FGY2+YV?QN&DH:C@&K%%XQ FL:9_*C*QQ><
M0WWD/8Z?BC+9)^)A)C^H,R$*]1<3>;1=-Q4L<D@4!EBJ B!9Y( 01DW.#2TJ
MR3-$B8N*<F4@LHI:LV-NL,\&T5A>J'EC;*>;8B+GIIOL0$N^-OS$T4V^8 32
M3<[D1]5-ON <ZB;O<8;JIE?3^GY1T]DOR\7#?:W/^+,'DWZH?ZT1T(KR08HN
M($'ST+H /J\T@T9MOJ SDU?W^5;*U?5<;/WAYFU]('G0'_9VZ=%,5&G))( P
MY]H"2S$@E%-085EQ(A22;L[J)Y!A1 VYRWRRY=Y7/8XWS:X:]EE.GIN27HN0
MM#)<)1LISDWC2 I[=&R#Z_SQ)'BB;6/T*3J_\XS/BN_=J-:MLEZU+'2!%>^U
M.;\.G'LO5Q.9<DR+7.G=IJ( \;P 5-$2L)(PA$O*2F@5I.9"-'IL6LO"3AC:
MGO?O*IG+)H&$T?GO";^ERQO; #4G:(N<BXHR!,K&A4JYV<AS C*<$XD+*"#/
M7._IPH+K=4VW@;<%=2PT429SAG,*<ICI#U4A 4C!*J DR2#.)1&$>MTQ!X)T
M\!7SV<]V+(1M[T7#?H.NUZ(=2.O[T8X!O:AW>0AY(VHO;K +40N2(]^'VH-P
M?!WJ\&[ FZR)8(RF.69 'YD00!)5@.*J H)(A97"N*ST.6J3M.]W;^.TE9VI
M0^!W<Y4 K0_,]<V/TWDB%K,97=;;?W4,G#B-X(#[K">XQXI\>37&I=4SN*QR
MNJ0:N&[/N7"VMO#VN(S22LB"$<!YADPR!0*48 @RQC$K4<JSRLGIZT [LKFZ
M=E?>-^[*E;>/UP5-NY4="2.W]=[CS=WRD7R-XB'P "!NINE)RL\A\[0/$LM,
MU-XAO*.#ER9DYI5L_WX[7V>T?Z2/QK%DCN"<+_6)?9T_-I7UA/**YH(6 %)S
MU, 5 U@*"&11*,I2J(J4.88+>[ 16>ULJDC<MSPTQP[:<I',MFPX1V#Z(&Y[
M](B-H^MAI.4C^7'-T4\F\6*#[,<=9#N^DG<6R/J$;0X )EP<IP\38P=V#@#J
M1*3GD-%\(WI6IMC5Q^7BVU1(\>+QMUJ*M_,WTSF=<VVA76ME^JTA]++U1NK?
M;=V1$XZD2$DJ0<Z4UFT,YH! E@)>P"S-M$65F8Q[^U/1,'9&.#YQ4QGL03-E
MEJ9:LY70#5_&L\(WO"4+SSND@?-BIP''0]M-$S;EU]9<F42('W]K$?\IV?"6
M=,P]7B5;YK9W/2&#A$* %"QD:! S(P<0A0#N.)PHR*A^VO*55'*YE.(+_7Y=
MUW)5_[)<U/4D9U7*<9Z"BO("(%1!0$RP,\TR(BM"5(&="B">)A/9@EL335;T
M>T(;LFXJZPPX=JIHN,B.E\=K:37!I*5XE30TPVF.?ID":80S1$9=Z?V"'J[@
M"T\/#:WY+&_,U>@G>;]8&H?PV[FIS-TL_Q>/W3_N!"C+JL)4E-IB41P@B@O
M,I4"P7DEJER6>5;YA<<X\3%BB$M'.MDPENQPYAOHX@:ZG4H8 4HWG6&-XI6Q
M6=9/C!-SX@51\+@1-RZ>*/;#"ZKS\1M^PX7(3S\=(J(-I ]*Z]:/<OEJ.GM8
M2=%XV"<$IR8[/0,PI4AKNI0"7&4(E()3@:4@F7(JCC: E\C:SO"3B-T0L.TI
M+ 'Z7QI.@MQT#9D0:R_5&# [NZH.TXG/A=P9;]4F4N]\A.55\KZ-2M!B7#67
M<9TD[:5<K)QD+SRC9"J[<?*$^<M>D/5G-?L-Z6DHWFHU_44N[UXLELO%'^82
M<B(@(T592D R6 %48GUTJZ#0ASA!D"""9S1U,@*/:416>2\?M$6MC8UF#UK,
MS4*Z-R?DVB-Z^01 E@;;,+$=C3%##!AJR2O)5@%MJO-2A+*73E 8UQ8Z+^*1
MG=/SJ*\-TQ7MVE[0.:8\]XP0<\M;UX7;O2>.D.ML(5VP#>@\I9$WF(LB'V\@
MEU_QJ,JY%XS='XO]7W3VT/QP/9LM_C!AV!.24D@(I* JRQ2@E!9Z"RD1,.&Y
MB%8IXT@X!)4.YVB<4-,-W82N"7<%\V>TKJ?JT1R/32VC<S8YK9-;.1- 'YR
M?9^5 !/6KV]&PC] \LOEW)>K9#M+&_9&P]FA(NAH>/N5!XV+NUO-T"!0]180
M'49AO&JB09#8*RT:9D3/.J.-5_P@,ZB?![WUY$6)$ (D)5)O/:("I,HRD&8X
M9P6$M)1.X<D>/$2^?6\:HG474^N=9:J76K=Y-#7SW)MT^6!M9Z5&1C#V=G'=
M?P/H7N+4'XY0A4\].!BW'*H_1$=%4@<,Y:>T7AH9YZMVK$_3^O>/<FE^06]D
M-BDJI4W?E )!(01(06(<+!!0R;-<,(SU'RX.ECYBL3TMNZ2-W[BCZZ9V>M&R
MTR^A,'!3)/OB&[*-M_82",[JPD:Z0'JAE]2H"L!&Z,.5;O6.QTEXG99A(JN;
M%AC7RZ7^$)JTXR[MZK-<K68F^*9YMIY(6&:4:1M$\4(!5*088)I#H'!*<YYS
M0>PJH'O2CWV'OEKPWX'I.2T2OK@S'+2+H&[9, &!S1622W<*#Y0MSJQQL7/U
MT^KQ0<-,TG&3[+!SM6ZD8)HLM#B^G;=W/I%Q=#B3QL73[R : U>WXZ<_*KUG
M3H]AQSMH^LN\=[H<,(SOK=>:X,L=U35)69D+6&# ."4 Y1(!AE,(RD)07J2<
M0.Y4GO$TF:=2S%VW(-?KKY-(V=Z #94_L')]K[]I$TS]^@(4'K=D?9(&NR@[
M263DN[(^08^ORWJ?]CY:-1<;#W3V@<VF-\V8KQ[DM=*KY<U4K6Z;MGP9)14D
M0H$JS4PA0R&!24H'BJ4T8T6)*7$*\+$C&_^XM68B66RXN$K$@TRH820IDD?-
MAN,EMR6DUB>QP$ YG\DV&'W8P6BWDV&+E>$C>3/]%O:@YB!\N".;#=&Q#V\.
M0)PXQKF\/31(^N/27+^M'C_J#\E4CC)]!>Z;2,6F>S<J"(*,0$#+O 0HRR @
MBBL@J""DA(ADRLE?8TLXLC)9$[]*&O)-;-J&@2Y0U[&=LC6DE@9$!*#<E,DP
MC 9$,-L)'#QD^0+9)XI1M@/C?%"RY?M#U<@Z0?7]8B7K=PLZ-XWW-JE8VS[O
M[1* 3,DJ2TL *58 E9DV4 J( 8(50IG@6$JGXG">?$16,IM\;;-RMNF*6R;J
MH9K&#757Q1,-2S<]% #& <K("X3@NLF-BR=255Y0G==<?L/Y*;)U<^<OBVNN
M%>12GNWX!RM"*\P E46CKU) J?X#%A5#2'$F<^A1+="6_CAA7.OVEN9J<#EE
M#VULECY$Q.Q19ST%D&2<H)("IBU3;9+J<R[-*0.BU,==P7*>%=!E\PB*_8#S
M;1C0=QZ/A+_=-A(#54?[M>/ 8-CQ,$:K.U?! ^T5UF1'W1Q<P3C<#9S?][1C
MC>/X=C'3;]0MA4F%4EGP,@.,<@&0Q%RK_+P"A<1,HA*6F%8N853')$:)DFKN
M(3NR_]QI"D=K\Q@;E0K$*P*!$*( B*4*8+WU 5:4>95RGM(BF^A3QW0A/J_H
M<C4&0H?DK''J*F</!B5/)<2HPD"E5 )M"N@/IN(Y2 5$)9&$"9EVH+R>B_$@
M61,;'1#+X\8@$=UVA';\J^1ZU>ZP33JVWAT^TF7?=NE^>C@K4ZB#P3&!<6W^
MLP(>F?/GG_13U1], 6MSI:+5FIS7TV]RFT&XDR<X-=O#?A6M36Y1+C-8,).-
MD9E*#S(C  M)@. "EAQ"44GH5C]].%,N'[U7=?6&Q>96=,/C?@5@QXZ5 >;!
M3D&,BZV;0FE!W6-N4T#\7=L28)O,'"5'+!PZ@513 (9&567A #Q4?0%']LP>
MF#7?3Y<M?707W44"3#A355X@! JA($ XUX8+%1(H;>/E^J#-*E&XJ4,[PM%5
MWLO!(2"6"-HILO"HN"DKVSBQ@)'^3A*'"NZW(SIN/+\3$$<A_&YO>WI S]X3
M;2MD0586%<H!(PKI8Y\^X6!6"D (XI2B$I'*J3C"99*QX\5VRCCUWG8Z>M(N
M0VGI0PL*D*/WS.+V-TXI*WNI0[G.+A,<UVEF#<"1N\S^34]'V4&)JR:[Z),T
M@DUGIN352MZ]F\ZE^;N><")A91Q#VIRH "+*^(D@!#!/I3Z$B9SSS.F:UX5Z
M;-UQ6/:M2Y1+=OA)#"/)5\-2\V/M>M'KA+:EOR46AH[&2%CXW%TT/C"$\MXX
MT1[7L>,#RY'/QVN0(1G27=&CC6>!%9BJC)@2Y&EAK@@E8&D&02DDJQ"E)>5.
M46LGJ<2^#^P*.;5YSH[>F=.P6)Y3A@KKI@G6)7?7\L;PDO2*%#2I^)#&$Z0-
MGQ'S=&+PN8=]*N;(^Z7DTS9>5=[/9%,)82ZN[XP:^-^V,(+X[X=:GV0F:8Y2
MRJ5>H4IB@#B4  O!0%9Q7N5*2)Y7=DX'9]K1_0Z[S+3=3W:X<*FTX@)H_]J.
M"I+;>M_EXBK9\)%<FV8F.YQH@Z#C)19D+K5H(D'G67HF'(2.=68\8.@O*^,R
MX(A59#SDW"\:XS. GP6TTP%&$SAQ#TLKPEDN,@")+ &B10$PKB#@A-,4DZH4
MC+E$,EPB.$I<PTXCJ4;%#H]SN(BCG?44$ATWQ?KN )+7_2 X&U&VD@6RIRZ2
M&]6TLA7^T,JR?L]O\;]9+.7T9MY:<7ROZYTFU_SGK"VM]W$QF^H'-A[(7'&4
M$U: E!72A.!#@"&2@#"1XK),84:$RQ')FY/(QZB.KX1WC+6-,&<>/0[\L;;3
M'*,@Z*92UN"M>=IODVF4S"Y;2<M7\K7[.XIW>#!*@=23/Q^CZJW!<!TJM.$#
M!JHJ]>+QA6;@]HXN?[_^/JTGM!1"5!2"+$,<(%*6@!0% 9)+Q3GBB'*GG*)+
M!&.[?X[**R4;\LE7PX"C,_DB@'9:*B0L;LIH""+#JTZ=$3-6Y:E#<D];?>J,
M\!<K4)U[SU,%T/K6_+^QG+[1F8G[_B3KU7+*]2G*_(-60/N_V'ERM^3=MA">
M?N-TRX%)5I1,GY(RP(@4IA. ">>E6"N6C')!&2MAY1[C/*8(+BO1.WJZ:=!H
M#(&FN(C<,GN5,'DSG<^;UI<J:0F83BOK<I/+C9C-NX[M5L;]%C*.]"9" .-E
M94[0U'P+# A$64YQBDQQ',?0[N?])3@'C?=\!U+_]L_^!5CNC<]T3AWW6<W7
M5=),Z):]JV3+>-(^86;[X)=[+URJ+!MPLWX"W$-M_&.R/JX1\023<F20/ 4/
M<=RXFTO<3&+..,Z %(28/",!F"FUB6D%><X+HC(GQXTMX<CGG4/OY:Y#]Y_^
M$>=9]2]1W+J.E^,QT KAYHUR;>XJ[$B>WZ>Y7'<%P]43// *7LBI/G]]DTO+
M#_KH^9@'=TTFZ =ZEOD37V M^5]N%M]^UN^T'Y_^8?O-'8\TRD=U5H#U5W/^
M ;_M96\/J_OKO]?;3DI;'W99<4ZJDH,<D@P@2"D@N"B K'*J8$5P)JU*.H=B
M*/)V]!^[78A,NZ*V:<*-X;91NV<Z&#DV2A\Z*W:;UIA8NZF&_6X4]>5#@WYD
MM^M:E"N&4'"%ZNL^E)UQ.\ ' N^H5WRH<?WTYR]RK@>?F1 .<3>=3^O&R_E-
M=LDWO\H[)I<353)5<*0 RRL!$%*FBG+)0%D4)2ZYK#)5NJ726=&-'M'6<=$&
ML^WQX:;O[%"T4VK!D7'37+N0[#.PSJ-+OK8\!-1,3C('4C]V-$?5,4XP'"H2
MMY>'UD4\4Z^F*ZXJM79(RQ+PC*< 5:95%]8G^XSDYG^HE*5;?HP5V<B6T[D2
M2T-K'?8B::<RPN/CIC.\H1E0O]!&TN#E"GN)/E%U0AL@SA<CM'I[4$Y=HW_$
M=&7ZUPK]M[9COBS>+>8W[[1R$FVT_D3B3, <0U#!%.E3&"P 2QD&F>0\5;RJ
M,%(>&74VM".KC3:L4\]JO9A-!;4.^_9!T5);Q,'&365T3'3)^2T;)JR[9<04
M+S*L@(:7X)WZ/! (FR)G1?DI$N1<(#F3'N<TA&=R7%LM4A^3FE@LXWET3 4[
M.T"\+WY+,UD3C9,3=E&V4(EAYPF-FQUV4>"C%+'+;WA>=DG]><ONO*Z_>%/T
M9NT??_R5ZC6A_V[VUJVK"TJ,:(5S@!1A^H_<." 1 Y7Q/>9%R8O<R5CVX"'R
M%M@1-1_\0B4-0\G.K8'CO9<'Q)978'&!<[P-:YBY2C;LM+A=;8![W.]^LN8O
M:@6+ 0B%ND+SX&#<VS1_B(XNU@8,%2@6^8L>Y]7BCD[G$U:J$G,L09KE B"2
M$L"$MM4Q(AG/6)HRXM1(K8?6^!'(AG;RM:4^-/QX!S,[O1,("=>[2T\0AD<<
M'XL7*]AXA]+3QAD?BWPQQ/C$*YXWI)*MWLZU>=,DY+[;%K%!4A0$I8"I2A^Y
M,>0 *ZR/W)25%:EH1LK"Z>+S-)W(B]E03;9D!Q2E.8>3Y57D<.D=;QA]!'>_
M,NP7*]1-X!DJXU[P]8MZ=&]WX?&A#O;3-?%VZAK6+QZ/FZS^09>B]1R7188A
MS3, 2[VR$5<8X%)@0(L4YK2J>$F=PNF"<199(>S6OFLK0[9]4_>*9NXR:[I-
M[#ZX*2%I.![JW!\ZBZ[^_Q'GQM'?=S0M+VRGY87'M RX6 @$8?"[AZ%\/='U
M1" XS]]@A"+@;UT9YZ;65'<F_/%VL5R9GS4O3.\)IC#&PWPU*5C.J,P+@ N:
MFXJ!16MVY4(*EE9:41?$U=BZ3#:RJFT\](9J(C0[[M:6!6[VQE=8--QML:OV
MPN*+@</$3C1,-/]YE:SY2%I&PIIG]H('M-8LB(YNO-D#<<J6<W@[0*1J?YS7
MND.<5E9&19F0#LZ7^HD=KVE7X&R2\PIGIN!8 3-SC*L@($11P'+>:)PR1=P[
M?C48FY$UT::5XGW+2AO0U3*S6U)G0!1KN!FSU&E//@^..G OXO5RP.M5LIFT
MCSN3UG&^>S^P*:$8*1(V.+@QXF/#,?ET4;/!@>Z-I0U/S;.QSVD'_J20(A<D
MJP!A4IG+/P6H.:!+5D F2UH6E+N4+SM#QTGSNE<M^ZC_S1S+OM'90W.X6VPN
MK&;-19^W]CV'FYWZ#("&F_X[?U$7L"E.OU"A.MV<H3)N^YI^48]ZTEQXW/L^
MK(D*>*"S#VPVO6G+'C[(M_//INJS,(6!;J=+\7=)EY,J1:4H) 0%%0P@EF>
MI%FI3WP<89ESCE3E>$%F33S^C=F:E62QX>4J$7K)9P FCYH%Q]7M!*WU/5H4
MP)POUC98?=C!:O>RWG"0?/ECT58:T\LV8&\:'Q3"W;_9DQ[[0LX9E!,W=.YC
M>)2;ONC/.N?.>K^8?[@WS[8QO=O+B?H7_>Y*BK_)Z<VM_OOZFU:6-[+Y[2NZ
MDF_H=/E?9O^>0*F8$%!H'595 %6* U*2''""%2Y2QE%%':I7/Z$H+@O<+W6H
M9<34?4E>TCD54SI/Q&(VTZK0U(1I$_TM:[\\-5HV5;;_))/I>"UA.$[ZKR(V
M-Q')J9L(+5W2BK>N6+ C8++^2M8B)IV,[3\D1LK$B)DT<OY)/A:'^N)_DH_&
MKUSYEUN9_+&>6-I-[$TSL2;0/U%F8C<'H[G^0A;MA](UMI_N?"@WW8<B'I;F
M#+'20[>%I?X2J,3Y,YB)WHKI3\G?> 78G\$L[-5S?P[\/ \;Z</#JEYI>URO
MOLL:L$IS6/%" ([,6:\L*& IK("VGC"'9<ZPDO9%%)^#2"[:TKNHX@Y#9\LH
M/E]CRND+R2$E,N42%(1"@"@M #:=FJI"56F)\BJ7I6UIQ><@D/OWX5QJ<>_K
M."JN^/^3[^)I#.U8,_V\C.T=*?\4!K?3A_.T1G>L#\C/\/[;2:,;G#:ZP7FC
M>[&5ZAF;V3[8CVUJ._'XIS:W?68CMLGMQ9-G8Y;IG&K<FVN63X;4!_5;+9NL
MWMT>4!,BF"@%5B"'J32>Q!R0O"! ( (9@CG,,Z>>VI9T8\>9[) RZF5I. $+
M!1YJV36T=.R]8@FGW0U(!)#<=OB.@?45Z*<U/)J+-HG_:J^/6\#N*6Z2A^J5
M8DEUW,XH;E <]4%Q?-U/C;R=\\6=?+>HZS=:@)=M>(967]M29R^D6BQE^]P7
M^EW6K[^OEE33T/PM'YM<"ZT036"'!F=FNN_.]8*6]6I"):=<D!Q@DI4 "0P!
M+?,,"()*(A7-*5<N@141>8T<G-%RE/PXT[S_I _<ADMM #6_7!D^W915S$EC
M>2;RM#39:+G>+Z0B@""8 J1DQC,3(ZV<]HOG,FGN>\R?:-+L=J5G,A5N.]EZ
M%MXULV"T;++E?*=LYWJ"NN<;[J^2?6Z3-;OA]KL1, VT1\;D=-1]=03(#_?B
M,4@.KNK_03F$71IFNC#HE)2$5ED&>)'F .6\TB<$F8&J+!BALA*4.Z7$#&=I
MM'29W2:OMW(F$CV)25.0^<?Y8B63PK%E3(#9X%56L!PCP)#I,L=3I7=BJ?_(
MLJR"2B)HTD6]FNF.,1ONMM&6T-YT\)D^QDW5U#B7#B9G]#FQVU['1=IM%W5/
M"MB+^]^R&*7WPT"XPG>%\&7HJ?I%# 2PIY/$T)$]0_57MW*YP\7.6D0TRSG#
M%:A43@#")064IP(03/*LD!4C!739K<Z3BKP+-823V:F]R#$^_SQ8=HHK# 1N
M"JF5/KJ2N2Q:J%C]\X3&#=>_*/!1Q/[E-T+4NVG+*&2$E43@$K"*90"59088
MQA# HL@H8A12XM1#]P2-R,MVMW["UI \* )3^Y6K.(68W1(>B(/C]?$A!%^\
M(!A8 R=&D8=3%)ZP]DUOX86^1SUKWJSHJKGX^J &MS&S&BOB)[HFWY0YV6'@
MGV.V,W,2.E1=$BN:X]8<<8'AJ)Z(T\L#,T&[2LEUUQ=$HH)"44"0$U,!%D,!
M6(I3P&@!J9)%3I%3J:8S=&(;EIL$R#59SWS/ W0LC<GA,CM:DD?B1NB+<D&J
MT F?!U2>)N'SM*AG$S[//!Z]1H=^I*X_+A=JNC(.VDDJ(%94F4XG4IN8DBF
M<ZI 5M%"4$$0D<S%@>;/2F3'64,MN6_(1:NG<8BNI3DZ"F:Q76 MP"UOW074
MDU2^. /1^-4M#AEYKA4LS@ VH$K%N1$'&]JF)?2;V>(/U\8)?4.,9%8W_=@;
MPK&-Z;,2AK>ACTD]E>E\5N@>B_G\.Q':*'0AD?6K!VE2K9OT^4E:99 PQD!1
M9A"@(C<Q/WHS9EG&&$VAP$(&:Z)PBH/(QK7^=G# /@DG,;2\;HJ)C)M:<.V1
MT)9="%MNP1N.,1HBG*3_?-HA],'CU RA=R#?TB]W]TMY*^?U]%L77_%>:E7W
MA7Z?9#DG*-<&?BYQ 1!DU$2M%2#+4)65%>8H)2ZF?@^MR+;\'N5UD%D;>>9:
MSN4\7'9Z)1 (;AID7_Z]F*^K1),W]H9FX"JY7JV64_:P:NK4:9WRD8:],+*0
M/EB1EO.41J[)<E'DXQ(LEU\9H8W\>WJW[O"15BA#I61 (2D 2B$!-&,Y@ +*
M5,I4Y)5;75\_/B);'_MGV,30]>R6XHNSQ_D_#GI##O^6P,7MZWXL]E.T<]_A
MXOEV<3^&:E#S]A/#Q4J>F BH:$IR#CA%#*",<4 4U><APE/!LXSD H;-@8@=
MKJ<WXSW[I(W)YMN8[,6&E= !\A,$];%2X K 3*4 81,FB:$$7#"&&,XAYT[!
M/X'1=%?H3XJFG2X/BY&;VK8-_A_71K1'9+30_><6@7].3SN\Z5&-QL&A:^)6
M3-B*B:+8"9A36J]HXQ&!BDJ3_525 &,A 6&52D55<DLS,@P[D96/3]N(0#CW
MJY[QT8M]E;0?)F45ZQ@#=H?:%:/"[U=]8I1I<*LZ$0RUWKH1PZF,5_DA&")[
MM1O"C3H@0/V3Y'+ZS5@9QL[GL&GBF$&H *JRPB3P9$#E0C#.2BZ%4Q/'0P*Q
M8X::<.SEEIY'"/HN'':FY1 AW31V*]\G"_G\0LQ/"!$RL'QW^/'#R4\(=S*(
M_-1S0[LOOKZ[GRT>I?PLE]^F7)ZIV3)KIDG_]$%I)A8W\^G_2O&Q*5GV<E&O
MZFT'<E4IAGF.04DD D@09-)'I/E/R$2)>1,=Y-.-,3"GD1?\;@SWFO.D8_UL
MNT9]M-KP;U[<2I"T(B2-#+X]&D//M9T2>A8SZ*;-3K9CW-8MNDI>?S?\FM3)
MN9X3>C]=T9EA\ZIK?!:U.7UT0(-W= S-YQ-U>(P$]_F.C[$(>FX:4MMV4A@[
MKXM8QKA4.!<,Y%26QBCC@&6% A7*(9,$%9"43LK^D$)L)=W2:PXKCDKU& M:
MY24J.(!Y10&B)0:X2!%(99ZEBLJJ1*E=1X$@:'B5^F].;K,%G2>*\B;@H,O3
MSW+':_)C?"PWBR$R.RKYG<F/$-%^5I)0VO5H_'&UXCGQCK39V0=]RF%O5..N
MUOMB;EF:PEUUL^UN+90RSTDF<P*@R81$$G- 2X1!D3.I#Y2Y0(1:NQL=B8]H
M8.Y;C::D?L-56XG.TESTPM?"S1@1-<?UO@;LPQY@^K^^' #F8KT-Q]"EWFT\
M+#T;0U#V,*/+1$QK/EO4>J&O/\#FYK.K%)G0EENM;,T_+>7]8ME>'M5=3DNP
MHK1^ /47D74<<\2BKW[2[A=I]1PC:(O(=<-8F"N8DB('!<IS@%AJ[O&)!&66
M$\499"EV<_+UDHNLH#LJB?G8.\W<TS)R;6AECH;6!41Y8<H,YA4H:*FM4IB7
M@*HL \K\2; @!',WJS0<IEXFJ@F/_6O"][$-"IFE:S48#(Z.UIX0\.#=@^V$
MC-N-\TFZ^=H);MF;,TQWW=URM>O:=IT;:B(QE))6"!"928"TS0M8B@3@L$KU
M<91CK4E]:U ?T(JL-"\6D'3&QFXY!Y+8;2T?%)%>TUU[%^,4C3XC781"T8>4
MGJPX]!F1^PI"GWMEP&WF>[V_K[MP;[;G-&>X0!FH5(H RA#3"S>% /&,<$$J
M5I;NQ;9.$(J\:E\]-'%@2SEKC/Q[NMPU:9"K27,.+8=+SX$8^%Q^-B23CF:,
MS?B"7"'O0T^1&?]>M$?8D_>C?<^[+5PAIY-7W8GXC3[;TEGK3W^C?U=/4I9G
MC$BFM]M" *2J%!",.$@9IE56Y9+;;;>]5&(OV8YNTA)>WR\VI.V6:S]&_6LU
MF.1N"]5+:.N%:B74B55:2_Z7F\6WG_7[[0+5/VS79?^HHRQ**\'6*]+NX1#Y
M &>2#[H\J=T@Y2^+3XW/29OFK_4+J\>)/A97"A($B@R;VQJI;>>,0 !I1:5*
M*4.9T\U5,,XB+_LS\?!B-YYO&Q'O6:4YW#15C.1$E-)4F,FTIB42,%66@!-&
M59DJI?6P?W;'6-,4+ GDS#0]U>S8V6-/@KG;OG B#>)TA.N3)D($@"Y*OL00
MOIXPK2( G/W9%R$(Q,J;TWOR"UI/>1-2,DEA@66>&X=16NC#)Z, RRH'J"@@
M)+!(59F'3?O:HQ]YSWMS-N,K 0DS7#1M5WV[K?J"[J,]@T(Y6$>>2173#"4-
M1VV<XYAY82>Q&"U);)_Z,\L8.PF->_K8Z6$\7=H/R_ET];"4UW/Q9OK=_+2N
MA5E@E96<YT 9TQR5%02,,@(4495635 6U*G,T7E2L97/FG 3*JHZTH[N[?,X
M67JW@TCOZ-S>$WQ--4*@U67A0OFVSQ,:U[5]4> CS_;E-_Q6<-.N]8M^]_K[
MM)XPD7'!4 52D6LS@C$%*.*91E)B1BC.L]PJVNKDZ)'7:=MVVQ!+OAIRCN4^
M]H&P6Y7>XKDM1'O)G)?>20D"K;;]L4==8"?%.EQ3IQ\:%-/HW3#Y[5R?)>9Z
M5VX:'Q_&0-),T+Q4H*J*2IOTM&I7)4>RD$P6!%7$+@1D#':C!Y#LQDTV["4O
MCO)P=I,]$O:X]]PF'Z195AM1DD86KS#!.-/>KX.>VU2ZJ;3=4$ZK.7SA,(>A
MHC_C3*M7M.B33V_HZ-+I9LJ^-5.F?UV;9@;Z;-_,/37,UXWEV1SEDP=M_T2(
M,HT*K&54:AP>GB**-2J:9Z)>X]+TM*J;P-N)@ CB(D= %>::.1<8T*S21V*"
M:9I+0CATNOQHAXU\<_%E)^[;T83NI%:LI"FC(,O3#" A,X"%HJ"44#*4PTQ
M)U^DA]3NIX?!4EN>&)QE<3PJ] O@?C[8XS?4P: ==-P3P9X@1T>!_7_U6_3O
MY<I4%_^X7'R;"BE>//ZF%<[;^=OY-UF;BX%KOII^:T+%3[GE-M7M>2YA3C S
M,?/Z#)YC J@4 O 24IPB7NC_<UD^8=B*O/PVW"1TP\Y?W=9A(/CMUO'XH+KI
M@:;SP)H[<P#ZT3"HK:Z?DBW4'9,F[OS$/4"4E@5A<0NDCP(Q-:H^"PODH3X,
M/+J;/JVU>=<V,_M5KFX7HJ4JY6XM8X9AEE<09(R6 $&> 9)!!KA4:4EA20IL
M%75[F=0H>J\M2>%1J]@"JGY]%A8 U_M(5]FMU8V]6'TJ1(^RHS[J[A37J X+
M J.H WM!UTO<X8WX'5'>Z&]CDO&"5H@PD$.HSPM,*%/[MP!EP;&B2*:%Y+$:
MHA@&(B]Q_<V0>/U0&@3M;):8N+BM?*]N*(:EIVF&L@O&$_1":<@_VU8HN^ ,
MZ82R-X[/)8RO&^C]8OZA\3FV6G&G/_.;Q5+)YM:UOIZ+U]_OIYV!\S<YO;E=
M27']34MV(W_1-%:OZ$J^H=-EXTR:*,)2!(4$.1>FB[>" '-( 2YRR4A!2)8S
MERN;YR1<] N>CC4I?I:&+7UN,=%=+^F<BBGU#_-Z?DA:7?$\)X8C7@@-O<AK
M2M4FK<3K#M8[,E\E.U(WUPH[<E\E:\F33O2DD3TQPB=&>O?+P><T;4YW3L^)
M\?@W5)N)I]W$WQ@F@# 3K\S$;ZZGYHLYZ"ZG9/MY3;<B)MPDGLYF6YT5[*KJ
M.<Y'_\76L^)XQ&NP9R7WR4NS9\FANW>H:Z3]BUSHU7I_.^5TUGD[,EA5#",,
MRM0TUQ3,M#_!V@QCE2A@6F:I7598+Y7(!\9=@A[^H//@7'8%!1'9;>-WD];)
M W11F@'.G_-CC^;WN2C>KLOG\L.^B2I[919V2\E/4BJEK/("2&9J]V&( $U+
M4R5!<E+F9:%R[):4<I96=#=M5]A#;_XSCYX@-FC9.7$"8>#JJ=VO:W+8)B)D
M@LA%\8(E@YRG-'+BQT61CY,\+K_BVW=]P7]_6]</4KQZ6$[G-VWJ=V,5U*?-
MATG)*T9I*0!)3;R'I!A@2/2>6W*(9%D*87<9,X"'V,M?,]/4^='' +ZXN]-:
MH'$\U$8?R.]RR:=U&\*V#55K?!;M4ZZ5=SWFP$YY1$;6X\1?)RT[5^W!ON[^
M[JO<3I6>P9W3?,""O_[PA"H)[,'!N$6#_2$Z*BL\8"A/Y7:[6*[6BM($_G=V
ML2G85$ )]:&A(@"E90E(SCFH!"\+7JD"<Z?.N&?H1%92#=76,&E;-[4)(UZ]
M;\\A9:EFALOOJDJ,Z%]<17=7$/V"A5("9ZB,N]#[13U:S!<>][C0Z1P'6M'+
MZ<V\K0;%'U]_Y[=F+_A$5_*+WA7J6:,9L@EA>5'@@H LIUQ;(; PQ9T0(%RD
M4"C*2VR5;^I!._+"7KND5<M-5SJ5/VK+H^4G66J&''S3CLA:7%+$P\M-$:RA
MZAA)UIPD:U82PTNRRTP\W!R<[O'P\_.*'WYR>U]:\F!LL]4B674\R80V/7-J
M?2*>+^ZF\Z:&H#9_U<.<&[ITMOUHFRJ#7:F,S6]#.<O]<.SU9CL..9Z[V4_6
M/7^PYQ!Q^\YNP\+JG;Z<E-"TR$@&JDJF "G3UYI4"'#(4:IX66*'/A!#N8FL
M\+==9Z=;ZG&ZH)X&VT+CCPFAVQ[@WO-TA\'X?6=/(QZG[>Q@Y,?J.NLZ ]%:
MSO8B%JKC[&DBS[+A;"\>OOUF^P?U.]N_5DKRU0>UNWE]F)L@=O/_YMKR&YT9
MBI\TZ>64:PO%_,/U7.S_8N?)B90R8QG$(*T@ PBE$&"2,5 5LLPKF!6".U7#
MB,!CY)VHY=AX-H\LP84^B)@D$Q-*T_P@MURY.1MB3)V=H^*))\1M7]O.Q?YA
M9F%"X^K;J^;/9,O*5;)ELGO"S-7!+_=>.)4&%,Y[$A'M0)Z7&!R.ZK6)"/&A
MQR<F*;\MX*7!:+YJ/]M/T_KW%X^;>CYISA%4J@"4E@0@6J4 9Q4$1L/C3.GS
M1.747Z.'5F25O$<Y,:3]:Q[U(6:G00/AX*8)/2%P5E@6P@52/'V41E4@%B(?
M*@*;5WQC2[[I@1?+QU>;\B';,BJ0IJ@J2PC*IC$D9PQ@3G- *,I*3&&98>$6
M7'*>6/3HDI;TU+6L8"] =@LXE-AN*WA#-=F23;Y&Z;5M(V"PD)(>4B/'E%P6
M^CBHQ.*=(=6,/Z^TB6!.?>^Z+H7K9%Z%(,M3!3+*]=Z<0PZHI KDG*0$9BI#
M2+G7+CY#+?8E[)JJL=.[@KMK!JZ2%W36A)'X7<KVHVB[W -AXWA!&P86SWK#
M%\0-6EWX'*TGJ"5\0>S3E8,OO>2G +8F?Q/U\9L)D/KT^;>N!&Y)4EYD)D5.
MF&S^E'- 1*ZTA0XY1TCDC#G%7_12BZP =H[7#?'DMS883--WC0/K!\UNO0>#
MPFV]]Z(0H8*PE9B!UGD_K5'7N978A^O<[J6AZ[P[ZQ_ZY9@J\KQ*"2@+5NBE
MGA< 8UZ"O)!<*9&B7#JY5"\1'&^U&Q^H[_H^ Y;K$A\.@?<J?[EV!1_X%&,L
M\7XQ@Z_R,^2>:*'W"W]^K5]XSVVYK\,V)I]?_^>$<%QE.=,G;ZQR@# F@#!9
M J&$*@7F60J9S9+>'32VE?Z'%%/]G?[G<C&G=HMV3^3^A>DKB*-)K660VG@V
M,BP"%,8XQ75/J[OUX^U:6O_7=AWM#3?*6CDEP'H]G/PWORW.],ZH/ZAKSDW(
MTW1^,X$<ZW,JS4 JL]SD/U#3N[G0?PA>Y3DSU?M<]K0C"I%70T//',SNE_*>
M7KCUL<3$;NL:)*G;<MD(N246R>%T5JA .]/Q^*-N16?%.]Q[SC_H:ULVO8D_
MTJ4I7=6<@1B4585@!C##IG)45@"B.#*]7#%765I@ZFA-'I*(;C^V_98;BJ[6
MXQ$<MO;B$"%=+<0=^:*<^\[)$LP,/"(PLN%W3L!C4^_LD[[7J2;1K3DCMCDY
M'QY6]4K;^$:_EZ44E8(20&W^F7#,'-!482 R410%S#($G;H[]1&+?J&ZD]!W
MM4GLV]+WS^3KA1 *FN*2*9#3@@%$4ZKM9D0 TP9$EBMEDADF]VU.U$K/ZKA
M'A)VV&A;9VX<T&0*]?\(U+86HB:17  JLQ2PHM3_EXL4"]B!]GHNG@*R-=EG
M IC=GA * K?=H5MY#=EM N@.Z9!7^9<%#':7WT-JY,O\RT(?W^9;O.-9&'1!
MY_7[Q4K67Y94F$YF'U:W<OE)<CG]9KHOU*>NL1G&3- B SG,324]4@*FL  I
MIZ(B.,UDZA2YX\5%Y"VHLY'K9+GAPK%BJ!>T=KHA.F!N2J-AQP2)KXRR:%AJ
M'(\-4\D.5_%#"P8A$ZJ0J!</XU83'0+344G108/Y*:Z/RP674C0=53_3F?R5
MKAZ6T]6C\:<N9C/9Y+CIH^Y.7/L$02RR4C' F$*FDV(&"((0*(4)DADI!7(J
MBN'!0V2EM>:H[21<T[8AFW/&TA"0[1189.C<U-<^:H:=JV3-4'N!LF&IC96X
M#*>SWAH 2""MY</!J#IK $2'&FO(4)[=ISA?/IA^#2:@XPO]+NN779H9%"4B
MW,17F'(7*#?]717"6C7I\V<)-9O$J=3Z64J1=4]#*KFGC^ZFTGEP[+1)$)'=
M=$9'<ATXU1"]ZG+; ]ZP7I0L5/NGLW3&[0AU2=RC)E$77_".CER:RNBO9/OW
MV_FF8OI+>C]=T=FF.1%*N<)%60!.F;8J4$4 S@4'-$549#DDLD2.H9*6I&,[
MX9H<DMH4#5ALF@*TW=B:77'658UW;POE@*Z= HB#F:-&$/_]T.X5IIZ"-G[U
M)S_5!MA[N5IK"?W[GB90V\X+VR90:\&2']>B_63F8_MH)UZ4QE#NJ(8+V[0E
M/'8,IR,@)P(Z74?PO9E;T>E<BM=T.=>#=XWI)RI/L>!(ZZE"$H"(R+6RJB H
MB4FZPE4N[&KQ]I.)[YIYN'MH;[&$5%,^=2SY>08<V[NZH2*[WM>U])(UP2AW
M=GTR!;NW.TEDY+N[/D&/[^]ZG_:M>.=9\/NHSG?C9?FB=^FV#KA)W&_Z1HE/
M^@SS9K$T+TU0E8HR-[%? DN 9"8!)C0%19ZG5#"2R<IIQ8_+?F1-\O[!3.@_
M_6-6IO^B3_9-W*UK5;Y19]-.13W?.7)3?;MU1R\V(#FL3]HV(#GN.M)YI5=:
MJ*XU25O?I)5+_]A\$\;1TU5#_6ID33IA@U8N?(I9"E80<53F1ZZS^!03<UR^
M\4FX\-O43(G)+<5U+6Q3?Z"M23#])C_*I<E)IC=R0O+<-!?, *RR J J2X%)
M-P*"%XI)R0GA3M&93M0C;RD;BFU=/JVLW$O2NZ%IMR=$P\A-I1LV=K2Q.>%V
M=>P-*UI?;^#;<A-.Y7J!$$ACNM$>5>%YP7*HK_P&\50WF_O$#VI7.W8!=R\7
M]:HM5\UVE*-K/_%A1,:QBDY48X_B"@J#1:B5-(R9<9=6$.".UEJ848-4#G!W
MU9YZ.]YRZ7ROVW3W2*[2/JGBI+,_F1.T3]0+*>R!OL%AE>A2Q(G*, $%ARE
M.:D E14&&:&JQ!7.JLSIRO4YEPO<9($>%@0TP:WK&J#+_9Q9UV#709.1PT(6
M% J0PDP"Q*4$6-("J*R2/"TJK-)L,I>VL=;1IX*T4['F*,!$-&$G?%OG;[&N
M\U=?)5*_8-+ FCCFYS)EE*&*LYR!$J8$($P%H% 10$0I!4905(+:=5(>?05Y
M-3\^.W5C@FZWO3[30IE_CFJ8SZGNY9^HPF646I9/6;5R$T[2-7-[(>=235<3
MB@I:59@#B7,(4,$+P(CBH)2LRJI*\-PM@/0,G<@6P3H8@7Y/9$O7I^;5,3H2
MEXKD% (%H=[(<:9WA92F@.I]O,C+0O"2N>T* ?#QTO<["/VXE'RA!WG\*2Q8
M+H>E00!X'98TQ75?R>3'CNAY"\/SM'16K*"GI6,J3W!:.BOJZ=/2^<>'Z+-W
MB[H)>#U9_[U^+U<?E";\42Y-ECAOW <3@F0%A5) (:P J@H,"$$"D(I494:5
M+%+'=K&>G$36B8:;1.QV0M@:X0E(F.&CR084B]F,+FMCD+>9@8Z&M_]4N&B,
MR ![Z90?#5,_M8>=TSTGVK#"3:<*?>PY\]Q5$U2G_UT+<64N"I)&CO;"-K2:
M&H!E4$7FP\<3J+H!<)U6AD,&]+Y=L&V;\4HJN5Q*H3FX;B)C)U"BLL@S EA.
M,$"4,H K_5.59@3FI:2E= H''L),9*6YII=,M_92&Q_L>-TY!&_KNYQ14'2\
M#'5NRK.!W%AHU_U8^USR# 8IW!6//RMC7_ ,!NW$]<[P,7U-Q97^0J=L)MOA
MM'Y]_;UCX)?%0OPQG<TFE8 FQ8&!C!1"6X7&]:<D!#PE%6(X2Q%QK/-^F6CT
M0_&:!2\59@6;K047%@Q78VV#0TN^M;5^W+"0K'D(>AZT%SF8365!<F3SR1Z$
M8TO)X=U@-V[7<['I,;R; IS),LL%Y:" I58/2'% 4EF G)>*5V6.*S;\>N ,
M\5'N JZ.[W#,R:7>=OOV3KEV@-G[0B  = &\_W7K[=_I$QXEL=I=_G@._'.$
MG]I;?P$0"]?\I1&\BSQH.V?U^%%_32M-PA"\-P-KPZBN)Y@C@;#Q1J%4'[52
M:*XABQ0@+@B2A.5*I([U''K(Q;ZG7]2.4:(7T+%3#^%D=E,):[I724.Y404;
MVE=)0SUH=04+*<,54N@C-G;-! O!3Y1'L'DKA#-Z>Z&[]>E\E,M7T]F#J8;?
M.J$%S%(%*\!D9M8Y+@'AVKQ@+)4XXQE/<Z=U[LS!&,[GD_$?"4A$RT<$Y[,-
M]#Y.Y\" #G8VGXH9J%NW<<=37,>Q QY1',8V])_04>P 3[^#V&4@_[#S8Q?T
M?\B94(NEJ;;4)1(C2,N<:<-$*%( I'(.,,4*""%E*:AD.73*N;2D&]O=>^XR
MQC "-"? E-)Q=OU:(6KMY0V-D[-#UP*B" G<CI('#,2WH3IZQ+T#%*="ZUU>
M=],D35OV_Y#TV^.KA]7CA]>_=M]W1@A6)<, ,JH HA(#DA82Y*HHRTP(44HK
M$^?,^)$U0T,0&(J))FFG <XAT;_2 \CGMJ+W1;N\<JUD% O>)$DUWU9,6?<(
MA9Y.:R5U09!6&9F'&@V3EC!MM,RYUT;1)A=X7FN-2X^%M#/T06SO8L@GG\UA
MU-%WR?WHCY:9:,EL'D!$W33/4W\&F^=%:.PVT<O#^"V7#\L;.I_^;T-$'P+J
MQ6PJVF3YN?BHO\.U OR@WDSG=,ZG=+;)1W)=1$%HQ5M:N^PUT?);!IOEM<NB
M":#:,+G-CXNSYH+B%F@EAN%IU/49%,;#51MV< _#>#/L3O&*;:JKY4IU&"G>
M.MRNJ]W*,[O5SP.N,0^)>VTNRZ'&L\/<9-NSS1Q?]6_+,VUOO)H*PDUK+:G)
M2O?/UVO,B%>W6S:Z4M@[C,3ZH =A$+!EB#WMT7N(.,-RJJF(^R#^L2/KFJ<O
M'DW!T[?S]I98T^R*G79TCZW&B>(E$;22(*69R=9F*6 JQT!QCEDI2PC3S#5;
MVYN;R)X4$VO5Q)8\M%5ANT"2IO+NAC-CN)W)57 /-O&?%TL]-A;:CGKM?!W>
M#7<[=7A/'UG#1JD,1BE@X(H_+Z/'L@R&[51XR_!!/<Q?A[#?MW?W=+HTVON#
M>K>8W[R;?I.BBX@G!*>%+"# J.  L9(#S(H*D++,<4HI096:S.6-J13SQ=*E
M'(8UJ^6\J:]PP*#]%?"& :,H9YH%,#,\. 7VAIP0B_/*B/B.E*FP,PL?5&(8
M!0VGE[(6HLV"@]-]_-GP<]2/-RMN9]&P^/6>50.1&N\L&Q:;O;-NX*'];/U?
MY%S3F.DSQ;6XF\ZGY@!A:O]U"<V3/%44(B8!(]"TRT 5P H50$J.$:9YKFCA
M8LU?H!?97N^H-T=CND??S1*_A)J=K1T0"[?M81>&?=+K,@+A3&5+(0,9PY>H
MC6KN6HI^:-#:ON99SY[.9/U)?I-:P6BS63SPU;OI?!VXDXF45H7$0/)" 50@
M#"CB%!04YDBD%<:I4SIL+[7(B[TC>Y5TA-O\!;G\-N4R>2'G_/:.+G]WK!_?
MBY[=L@^&B=NBMX,C0K"3E;RAZISWTAJW++F-V$=5Q*U>\FT>/+\YROVBJE 2
M*5!4W'2S(Q3@,I.@K'+)RC23C#BV!CZB$7F5-T;Q81)7\N-\L9()=@RX/H60
M9*@H:5:!C!()4%4QP"JM&SG+>5816"B"W++C!F+DE09W$J7AX-@IO($"NZFY
M1M)X^6D]L@1K1WQ,8>1FPV=%/&XE?/Y1WT9834GDCW2Y>ORRI/.:MLT]':_C
M+@T3<YMM.UTUI)-=VE'NW&P%#=84Z@*YD=M#V0E_W"C*\CU/$_N!U?)_'O1J
M>*TW\E5G'$*"JJ88%Q<%-M4($2 JE4!QE9=$HCQCN9-I?8I*Y,UV2S-IB#H:
MSR=QL32:ATKKMHH/!8UA%O=)%,H</DEC7#.X3\PC\[?W84^SUS1N-.FZ$XBH
M$C2G0!"> 21+#(A)0,XEQ171_Y26>+):K.C,TI!;C^RTZC;C6W^,7\PKR:QI
M+,J=\XZW\EM::SY2.=IHAH2)=^R1Q=TR.^0[E#VV&7=<*^Q0G"/;Z^@!WVBH
M>O5!-0?/3B.7!4-IA4J@6,8!RH0 I!1ZSY*T(%4II8!..]41A<B[E*%G[A*7
M[3G:,<CB" Z[93-(2+?ELY:O(19A9SHK2K!8K</Q1X['.B/><<S5N0<][UK6
ME:581;C,BP+(E%7:%"P(H)0B $M,LC3%A2B<O*PC%=U:DW&\*W&KIQ6_9M9%
M,=SO..(4O7J:PE:7BE<-+%#E>O7Y2=92#V[JQ[_2^GRV:"I;K"_:L"BDR$H%
M"II1@#A* :Y2XZQCG&4T)4PPZT3,4%Q%O]=H:3<.?+&E'B=&HQ___C7]9*BZ
M*03WN(S-%%R;'+@MJQ>O3R-.19R F6!3,E;(C/?41(N9L8(P5-1,/[%G&3=C
MA8]OY(S=X)Y^/GXKQ<-,?E!M#]]?Y>IV(79\X>^F<_EV)>_J2488S04K 1.*
M 93G5!^I* 0P%:DHJUQO7TZ%^>U)Q_8(=HR8\TC7O+OE9??Z)?EJV$D:?BQS
M\3TPMG0D1D'.T;L8#C1WMZ.S_*%\D?:$QW50.@-RY+5T'V&@*_,+93/Y17Y?
MO="2_#XAF=8MVN(%LBJ,=BE*@*E H&#Z1,E26B"W!HEGZ$1WV]S=+^9=''C#
M0K^'T DB1]^GO^#>GM#D:T,T,523AFS 57]!L-"NT@,J3^,X/2WJ63?JF<<]
M38-UHG6K$3:?=GW]?5I/2)E798$*4**\! C25-L%E("<251D)4DY=2K(WDLM
M\JKM]J\MS>2KH>JZS??B9;FSAT+!;0D[ ^"^9=L(%FJ7[J4U[L9L(_;17FSU
M4N#ZQEL;E!#%):$5D%(*O;))!F@J&>"BHAE)*9',:65?)AEY>?<6_AU@UUM@
M:;?JPR+DMO0#@!.N-G(LN]V"X/.HD7S13G=XTT]!O*>KAZ4^!NQD75-52@I5
M :" &" D4T"E5@@BSTFJ&%<H=0JP/28Q@E5.YX\:AVVUF>9#]\UB/P&2W4H?
M)KK;RFYIF8/(3L&SKU%,\_-B!5K )PB,NF#/"WBX0'N>#%?)HBLQ8U$Q02_.
MHE25WL)1JH_5^I2MUZ[^"1*5(0$%R;G5Y5(0;B(O\Z-*%FK-V%B5+.SGQ4Y=
MC(:VFV;IJ62QX>Z)*UDXHQ2QDH4]+T]>R<(9-IM*%NZ#>IHN#R; Y8/Z).\7
MRY5QA7R6-VV2!\T$9U6:@I161)LPG &:0P9D4624%Q11I9Q,F+.D8NNXAG ;
M&;8FG=0=;4<CYCQ<EL9,$! <C9J-_%NJR>=+\KL;-!=%"V78G"<TKH%S4> C
M0^?R&W&C:KH?YC>-^_/3].9V]4%IC=/4%'BOQ7Y8+C4[$VW_X"HK4D H+0&B
MN# ATSDP<3<(%R6L<)3X&DO^(BN,#1==\/72\ $6"F@CJ2U/$R?0PW9V^E7-
M,\#<33^Y!WML)ZB[2&FX!A\4T'RW15*NDBWK3SM;<0)T(LS:6*$ZH68O6N2.
M([:A8GALR3[+:!Y'S'SC>ES)^&;RW=_/FNL$.C/6^9O9XH^W<[58WK6%EM=)
MJ9"5F'.L0,FP!*@0.3 %,P!#HL0",9(1M_ >.[JQ8WNV7"P?]0EU0]\U[<\.
M1,M;OO#0N.U2NPRT35(-"\D.#U$2?1WE#I9 :$=UY)1")RB.DPS=7G=3';76
M8Z8\KQGB@<X^L-GTIAGWC59C=/9W29>_&C?G=/6XCALZ"%5)!4U%AO11.U<4
M(*$48$Q4)F^8*@(K6A56);<&<Q+]9F'#6[)E[BIIV4L,?\F:P63-H9WJ&3X)
M_<IH5&@=_8LNJ,8(.0J&39\*TT1VU%?=65R-ZAI.?Q1E%@RFM7H+-Z!W%R1;
MXZWK>K\]&J49Q#DK(>"R+  J\Q008BRI,L4I(HH7$CIV8/3E);8/<C$'':6N
MP&UR*V<BT=M/8MK5=96+"L?*14/ AX15!&,,2&[2XGE* $:E #+GA.:R*DM,
M7-+BQP+?/9%^6P6I@Y[/] ]3-6VJ#>]/Q'CXV]F](Z$:VV/3\A;V6!\0HG!-
MP[PY&;N!V%#(3C03&SRDVP[4OLT?)Z]_^S3).!28$PERT62$,@8PA@+ G B)
M)!<46FTENX/&#J%]6"[LU,V>I/UZPY=_-P5@6$_:Y/CDY>)!6Q]3J5=WKT36
MZ_J4""<6:"WY7VX6WWY>/]XNT/5_;1?GWG"CK+)3 JR7R\E_&UXS[=7BCD[G
M$\98E2M9@;)0"*"*9H!E>D\O*,M)*7.5*>)B4!V3B+PFUF743*295A#+G:IJ
M)A#E:\N$8]#I":#L-M]AXKLMJ:&2#RHAMR]<A*)Q'8$G*Q.W+V!?8;B#)STS
MMJ:436=-V,;+SMR3'#/",P(4)2E 1.H-2NA="E%$,99IE4'D5(7JB$1D*[HM
M1[4^Q,RVY!TSM8ZAL5N,PP1V6XP[M*Z2EZ$-UO.2A$K(.B8P;B[660&/TK#.
M/^D1"?'.W >9%L]=":<<EKQ$I !%3B5 69H"O0CUZC/9UYD@*D56:1FG!H^\
M$3;4FN[>#K?7A_*S4HN<8P4H+9LBQAG !46@Q%4EE:HJ5F&[(L9#$?"K7KS!
M(/GQ/_0A'>A#.C"'=$LOR4E,^I7-4#E=U<Q&0(^6]8>2.00:#)#0+TK XG-V
MN\X_(T'O7?SA.^-=I)_A=N\6_-PSD5N4S?GB3KY;U/4;S?*91/8)3"DJ9%5I
M]<$+4[E,ZI\@!2G,B&D%4TEJ%0L:A;O(FKCE(3$SNE-%/:&<FX.O;%V'[#%9
MW<I$MDFA=PV+D9IG64V8A99[RFF([6[LYNQ'P_)/B6'Z?,&-IYRF2-W.0D_7
M:'W/0DQ;O"9H+K &:X=F1?19AH0YX>7=(LV)B*^CK:>85&=\505"&:DDH CJ
M'5*A%!#$<L RF6-]V) PS]WZA5A0C6Z!#ZLYZ(*?K4,N*":N'KH=,$Z4F(M0
MDM=!WF!.N\L41_;B64-P[-:S?]5/,UP+,35:B,X^TJG6."_I_=2$ERWN[A;S
MSRL349176:9,C*@J10Z0P!6@#&6 *DD13_-4(J<B39=)1K:'MPPD]YH#DS3*
M6Q[<M((%=G9*(2PB;CIA!XR/'1@=>5/=R3"0-!R$4PGVT@;2"!8$1U4(]@ <
MZ@.'-_W4P5M]'M0?R\H,_UZN)CPM*3>!G*4TGGZD(&!4FDAQ7N85+&F%I<O:
M/Q@_^L&WI=8L<[>U?0B$W4(>()[;JMU(9BA=Z?U[?3#IOHCI_TISUF@?VDU8
M62=HAUO.9V0.M'8/1Q]UH9X1[7!5GGO,;0D*.9V\ZHZIV\C'-_HW]23#*86T
M4J! 4"^^M*P @XP#0:&H]*^(RE*;9=A#(_)27%/="^=M"-NMRSYT^M=F()D=
M'3[NXEHO/ N!>H)-]-OMNM,_;)=;WYBC+#D+H=;+SN91O]WO!:VG]0=UW3I&
MM;K\N)A-^6/[YS;$GC'."\H40!Q"@ B5^J2,M6E,>$936A*8.L6HV)&-O$ ;
M)DR*_;U^:.TI<]LS+>&SVTK#@^*V@C=X;#FX2EKJR=?N[RAEE=P$#[3-6A(=
M=?=U ^)P4W9\V[]AXHKJX>GLU>*!K:[9XF'URT)3>VED7,ZW7WV!F<HR(8$T
ME]BH5 5@N82@R!05^A!=ELIJ"W<G'?V>_W\>IL*XN(U7Z<9PD/"6!?<NBY9@
MVJF0.!"YJ9$='I*&B80:+I*&C:3C(U*!-G?Y W9OM"0\>DM'-T!.]7ET',%/
ML_2FB4]@3B&")0,9K"JM3# $-"4<*$FD4DI(0IR.Y;W4(NN/R[5*'./S^J&S
M4QW! ''3%F<*2RQV"DN$4P]6,@;2"/VT1E4"5F(?KGN[ESP"79HF?1^4Z4U6
M?Y;+;U,NZ^NY^+"ZE<OV9G =":B/^-IR2$&.!05(0@D8RRM0RH*DD,.""OM(
M0%NJD9=^VP=2V]@WAI&KI.Y8N6KKM!INDFG#CD.(@S6B_9H@&DZ.]L,:HE]:
MB-9<- @U?*QC#CSB[ZRA<HCRB &97_2&-72! C%<)>\-L+ >;+S "5?Y]@(B
MG%_V,YM.AT^81+W%O-9'/V&R)-I_D+)M:8$H%(24H,H$ H@A#K 2'%10JLIX
M78O<R9GCS$%D'7LN_*C-9-WA*5DSY=4'PQUX.T,L*IQNJC@\DLXFFS<:@<PX
M=_JCFG;>\!R:>_X#>1:QE:M3-70W5N>VAN[+-GY,_VY;07=3B J)G. TS0%+
MF;81"4$FF(N!O-*6HR:<Y:E3W>\P;(UV?MS6^_ZK8U'<,/#;:;3Q0753<SUU
MOH^OD4V,R)K);1QLE#IB87$+5<DW#%/C5OT-"N11A>"PH_L<J6_I4K[0QW1A
M6H#(>=V6;%@N]5?>5$][\;A]Y"-]-+^Z_H,NQ7M3G=$\VZK_MW/-2W/NJ%]_
METL^U8__39JCOQ37WS3'-_(7/>;JE=X,WM#I\K_H[$%.BBS%D%89(*7D  FA
MM3%3^H\<(H4Y9#SC#AEK3RJ,BY+QBL[]+[.!MAGC<LU5\F,3@C:G8DKGB5C,
M9G19)_H+26HCJ$OFW--^"3;^A3_+[#HZ+0S/2<-TLBM8LB.9V5EVG^ND2QKQ
MC$6=M *N\R=V1$PV,B9K(9-.RJ01,S%R)D;0I)'T3_/)N/A9_BR?CI_S9C.Q
MM)O8&\,$,(9WHLS$?C-\&._.?#$'B_93Z9+7ICN?RD:M_"64E^<YX-[O.GI2
M#D?T1SV'F=AW<CT+CCP]9W?WL\6CE)US[K0HFL_FS"L:KNNFH,;NOYMVM.\7
MJ[_+U2?)%S=S$X;Z42ZG"_%FL>Q^99[+)I@S1K-2 I*3$J"J:<V 3=58EF>B
M*&E%K6K%/@W[D8^T>WLF-RV6YXM5\BA7R7+#UY4QB31G3?+N<LM;8SX]2FTS
M.59B'/D#L'3_/=MI];"(P(&EL]4+C0NQE:$U@+K.VN^[:?^T,^T?M].^PWM
M'^.30![*03DN\^-Z-Y]D8HY<HT_#Q9#KH(V#3BA5*9%7("<FQ56@ I!,5"8D
MCV N%4^94R;;_O"Q+\N;PU*7J-95V\W@3XZNS@-$7"YAXKL>NZ->#._A:1&"
M7HL\C3?OM&"G+S0&>M<V07#F2V27S5QV:.:V-N[:IC4UO-^:PIOS>LH;$S:;
M<$QR2E@&L@(Q8PQ6 $."0%853!&9<<*16Q)Z/&:C>\=V2#M&TL:;(#N%\3Q
M]S?1+CJM#DVYUF;KN+]*=O@W-4$Z"2XXH]SC>Z.C'"H>.!ZCX\8/1P?\*-XX
M/D7//:!M^]CV@>Q*F\P6]<-RIQ4)1RI',&, *V)J;L$48%Q@(#&BE!/&*^+4
M?]6"9FP;K.5@0$LI"]@L56Q8,!QU98?#AGJR)1\KF<%>WE!:RX+BN.K''H(C
M/>+PJL>5ZWX-HU,7NR^D7C&R?>X+_2[K-IAFI>77@]ZL4ZBOQ7\_M,$VYB"X
M>)B;I/:)*+'*6"Z!Y";-,N,2D+)$ *>"B5((66*K<]L(O$960(;MA#7\=9'1
MR<IPV-0PV49BN+:W'V,2+:Y#G\_4N*G#_:IO39W%4V$QFYGKGF\$6$</KD78
MJ=JPE:+U]G5R/)\I=;BN?#Y3ZW<?^4RFV.VN<AS0>R\C([,PWFWC.%CN72>.
M1-*S0<!B?O-%+N]>2;:ZGHNN[DR3'K7MX+8ID*\0E$)5%%1EE0*4FD*\E<@
M)1 Q@B@6J5/VLQ/UV+=U74.!QK1:S$U,PFS3KTMH!M?.VMSQ1LX-8@YIRA5F
M(*N4 HCD)6 58P J4D)4"($+X>8ZBP:RES?L(LPQP;4[DT4#S,T<:;K%&3X2
MPT@37=?PL-=6,WQ/"!_A0[6+<*(];B<)'UB.FDQX#1*W[OI^2NRZ#<;C>L64
MC"I<IJ9>7"8 4J4$..,0E"7-8*D04RB+47"]GZWQMX+%07J[<]N9P/-B<0Q[
M$K3=5)Q[9>ZCU/H-LY=U8<SYB%- /=R\C%4Y?<C\1"N8;@=CJ$KI%Z@]RQ+I
M=@CYUD:W'-VS[W/O9CJADJ1<5B4H"YZ:3H0,D+PH "0HSV2."BXSI^["O>2<
M-B;WUF<;0W =/])N1HLM XYM@_NQLS.7PR'BN'F<LXH#=O2U$BU4T]Y^8N/V
MY;42_*CUKMU;?NO\X]+88*O'C_HC,%1,+,Q]>W?Z18_8)*,KPI@L,@0HS_7A
MN:0IP*0@0 DL4BRK@F.GS%D+FM%O"O0A\-WTF]YEO^C?3]FL*R#DE=YO@Z'=
MH@^,C,?)V <49P7@(&8@+6!#<515X #!H3YP>=6SOIHI/&+JID_;!BOOIG/Y
M=B7OZ@EC-"6DS$"!4P:0%)56!9P"29!"59J2O"R=:JN=HQ19 ;05;G8()U\-
MZ:2A[;C\SZ-EM^B#8."VU#W%=Z^B=DFT4!74SM(9MWK:)7&/*J==?,&W4P%?
M&COAE6S_?MOV/[A=S/08=1OO^FDQF[U9+$T\U$2)BBE5*J!2)/4.GQ6 E87I
MJ2HH@Y02F"*W3@9.]",O]C4WR8]K?GXR(0&[+/WS.I/VJV$KZ?AR5 2NJ-NI
MAXA8.E_DAX;1HY^"%QC!^BVX41^Y'X,7-,?]&OR&\70SV+L[3%K,IDB:YF8"
M*PQ53A7(JMSD1N(<D(Q*4-(<Y24K66%7]#$ +[$]YR;=;:&2I?PFY[89^R$@
MMG15C -<;"=XP]NF)&)BV OH\QB.42B'R !.QO66#(?LR)428$B/BT,3G6)2
MBQ[H;,=SL_$-R$)DN5 <H(IH159@ :@H<E#F9<8PX@))*_^*!:WHBFI#?,=S
M6">&O)-KQ08VB\NZ<&"X*9\A.+C=U]A)V'L)<V&(\6Y6[&39NRZQ?,6G4!:_
ME>)A)C\H;>G(Z<V\O5?ACSO.$%%6I2 (I+)2 $&2 6P2:%'&!()0*EC8K]O+
M]"*OW34#9@?L6$C6/'AX1VQ!M%C%8:%Q6\E/A(I+K:.@Z'A6DQZ,DF.=(6N9
M^XL!71YFQ(H]UC+ME]6Q?\WW)OA^*?FT^2#TSS/9)-G-Q?6=B>/YW_8+17E>
M4@9+0#A&VH0Q'7!Y 4%&E,AQB3*)Q60N5Y8G,0N25A\U:3_J-6&'2] M \UE
M*-VA['H9; &?HGK'R"L(2$%-#D]! ,&5 %5!6:584:D,.QUE0P$XJ(]PPBC_
M_:_)'IC_1._N_R4VG);'UL @.9Y/=ZA?)1OZS==V;0./Q[6[O;S!+M\M2(Y\
M!6\/PO%%O,.[ V[>FDO7)EMA'097(0QAB@$K: D0JBB@-.< IB0EG,M2Y=3Y
MUNV0RB@W;MN@=*_F12?1<;AE&R*SSPU;2Z]-<0H=4MXK4,A[M2,:X]^IG1/S
MY'W:V8?=6PZ_GJ],1)TTA\S9V[F0W_]3/DY0I5*1I0(H)3% )9. $;UY2YB)
M/!<\KS*K\GQG*41>BBW-I".:-%033=:^V?!I7/H78A!IW1:ALZ!.;89[A?%J
M,GQZQ-%:#/<*M-M@N/]!SYH9FW/,KW3UL&QR #ZHW=R.+Z90Q[82!"4I5Y16
M)@25:9M9EGI[% 0H?1 A&<XRA9QL9E<&1G3';!DR__5NLX>^<D[L<D;9;G.-
MB9V_O^8$;-O$KZ\-1W&Z%/O"$:HVAROY<0MU>()S5+7#=QS?D)IO6M\MEH]O
MIO-IK4DW-T,34>1,J:HT\3+ZY*XUDBG:2T$A: [3 J80.P7$G2836=>L:;6M
M!EV#7D[B8J<WADOKIATV]*Z2C<Q= [Q?EHOZO.@>@2I]D@6+1SE)9.2PDSY!
MCZ-+>I\>:CH<5O)YNRU%]>*Q^\=&*TP45@55#((L9T1;#UB90EPI0 4A"N>X
MHC#WLQZL>1C1@#@N2;7#U553N*][HMT6'0/??"; U;"( JN_;1$.T0'6A3,F
MP0T,>PZ>R,9PANB\F>$^E)\Z6]]I_VVZNGWY4*\6=W)YE!E+,<U23CF0HJ"F
M,Z<Y_>0YJ&!I[EJ80+)RT5\V1",KK%=224U'^(6Y6:%FIW1"8^&F9=;4DS\T
M^61-/T[*KX_$@72(%<E1E88+"(=:PNE=/[6@+28ZYU/C<-DT0#E5(;,4J5)Z
M^0,A<P:05@@ DXP!E5&(<%Y6D#A6B;:D[+(DO(K<;/C8;6+DIB5L0;13%!&
M<=,56T1V.X!%+S?J*'<@C6%+=52EX0C%H=YP?=WS@+2BJ[8@\D,]G<NZ[JR5
MNHFCS/)<86D<%XSE $%!@>GW (AIU9CFE<#4J?Q8+[78AYZ.E%<>;S],E@>6
M4,(['DTLY78_;-C($^I8T4MKW .$C=A'1P6KE[SS],6#MB^HJ6Z^>KSF?/E
M9R]GM*ZG:BK%VL)EW$2YR1*D%'*SF!' 0E: P8JJ*N.84Z=,/DNZD9?UB=)1
M?W0<;6I&65Y?N@)JM^PCP.2F #H&DC4'2<="A,."HZSA,OBMJ(Z=Q>\"Q8E,
M?J?7W51'O5Q-7C^88@&_RCLFEY.*09H6O )%F1J?)\. \ P!14TG9H80LDN8
M.QPX=KA"0\IN=1_)W+]\ATCBMCY;*LG7EDZ #?H<ZWW+3;^SL]3J+B:Z669'
MPXVRCLX)L5XH9__=TPY^8+7\GP>]I%Z;:XA-)A&C)45$GY8K@DWZ.RT!R?)4
M'YF+/,NX2&7E5.#F#)W8MN^&:M*0=<^ZNH23I0D\7'I'X]='<'=+N%^L4#;P
M&2KC6K_]HA[9O1<>]TX-[X[!']1N?Y]/<J;-;-'D9QXU#*ZW+IRT((K($H.\
M(@R@E*: 5DP?:RGFHBQ$)4NG?H8#^8F]^'<;(%XEM<G93]K.WW434[YH E*;
MWX.F(5)RKP=PK6PW<$[L%,B(2#LJFOY&M9&\;8'@")<^/HB;L5/(0T!W(HT\
MR+!NBI%WB5V3E^__/N%2*F%*],B4ZW-^3@M $6= <LX42RE!A;31;KN#1E91
MGWY]8:=M]@3M5QF^[#M>R=U.Y_0J^?L#G2>?Y/QN.F?3X>O[%.\]8</KQ]M%
MNOZO[0+=&VZ4579*@/52.?EO(]2(F==3T?W'A!).E,QR4%&4ZO-NA@%6IDAM
M6I:88ES2RBI.?R@CD=?5>[E*[I<+K1%$W3;?T3S&+!*SB['UCAX=.;<E[5,>
M9H>Q)RH,<P*:IZ@*L\O&\RT)<P*L0?5@3HWGI]':#*5-GW&8$R5H5@#!"GU2
MX2('M)0*B#0K%1,88NR4WK<_?&3M<^V1QW<@OYT.\9?*33.T=*+T63\M0J 5
M?##XJ.ORM&"'J^W,4YY1<DLIIJLWE#=W/XU["E5%F::L!*J4%4 8(D!3$QU'
M.,4IA;ET6T?')&)?<S4$DS5%+]_="5SLUM<P:1T-:C=!W>/9SLH2*GKMF,"X
ML6IG!3R*3#O_I']GB&VT2O.!$4DR@K5YG6$B !(< Z+7(LB*@F-1Y@6";H;V
M$8G("Z_)"-M2]%IX)W"Q-(X'2>MH]KH)ZM7:X;0L =LY'! 8O87#:0%/M6TX
M\V3\<S"M;YN6$?6MJ=CZ39\'YRN]0:8EP16J0$%2"%!1*8 E+8'^E819GE=(
M2+?0T,$\N7SJ?IT1-;VNN8O^06XI)WQSSY[0.KF5,]&TF8U[>#X],46ESP""
M9T!D"@&$* ),2:0/!'F.4)F6I5LT_ZC3XF/H:&IC8QS>4S$8N>@NB_6WW_RP
MP^33N"]Z\7H"/\9I?IZM0Z,7OB&>C?Z!0QS/7BWNZ'0^@56&<:84^/^X>_?F
MMG4L7_2KL&INS4U7&3,$"8+ S%]Y[-V34^G$E:2G:V[_H<(SUMFRY"/)V=O]
MZ2_ AT19$@5  .T^75W=CDUBK?4#L0"LIVB#$Q4S%S1S8M1*,"T0DD1Y)5V>
M(C+U%:VE>M4EK4,GY)KF+_.5%[5+XEYY53N4)\EEK2/Q@M>U0R''+VS/G@TH
M9'O8)O"7/ZRW4FVZ\#A<8TXAJP&#F@*D10X8800P*LJZE()R[9@L=)%6\I/>
MODGF4?^^OLDX=&PR?AFX\<4:%0R_%?NL56C6TXT8>N@LW6CQU=$!IBN[ZB+'
M0<%5IQ?"-LVO:J/,2W8W_J!^JL6J:>O5D9A5FM2DE!14E>V]I0MN+@DY IA*
M3(N:*>C7>VN46NI8@(YV<SJ5>^I^V^@X7F[[:304_);I 0 #POUZC;?!.@D8
M::<=IS7IENLD]O.]U^VEP.#C74#0,&1H$#[V[NDH9NBM;;'SV;;ZM<^VS7<&
MF8*_KM9:S;>/YCNS?0#_>)BO^_Z\.2LIR0F0N"S-2=LV]++-^F!9P$I5NE!E
M/5NJ'S9<R4U;3,F^T[+;U7;>"^&\^CK*2OZ[LE3-K?G-?)EM+/\;QR/"BTRK
MFTI[=5-U=;#E4(Z#B$M;9^544*:5IBF["EJ!^KYD Y%NLH%0C1H>B!4Q;/P%
M)B-6+/J4K$\;X/X"DW(4-?\2/ 3&JPCQ>/_8Q+;V'2L?UNK.\#S_J3XNQ>J^
M3[<JJXK6!!4 UM"<40M! 5,%!KC6FNI:Z9)#KU 65\JIHUSV?'21]&+(2;88
M*QYW):9N2C\)4GX:^^V7]Q^SM]OM>LX?MTUUS>W*J.0F<S?>[3-8X%AQ-LYT
MIPW!\87C*#K'>X! 9;)8K'YG1B:CK3ZL'OE6/RX,[=6C46!?E5#SG_;3Z=.O
M<\5(50D$1)77 -$: 0JQ_6>1*\DA5T3U!]GO'GK%AXF X^CW !73L]1X(<VY
M5 FK;41K@;4*1OFJ&"^D'=5,=.#"5$U',MO3O,D.$>Q,UY\,< F2X(-PB*6!
MO&A/JX5"8#G21$&#^"?'[TO[M2>IOZCMW4K:$J6;IAWW\6^5^LSN55<U1PE-
MD0*TR"O;M%$ 4O$*J+PF.5:E0M@I9_A:1A(??/9,F.N4(>D5&G4UR.,Z:4KH
M_-23+VI>6?\Q1+ZB2L!5Y">K*A #I&$5@BCC)8_[VODFVO.:W?MF=87JDF %
M<EC:;B58 IKG$""4RU+F-8:EF&U76[9P.SI=QXZ7NMHQY;'P+*$V"TH.HV)6
M/4_^&<_7@.]VJ)H.4C\UYA]QM/<^=C/QQG)XWJ2:,MYH!*KI@XU.,?-:(XU&
M@+LBS&ALU,!F:0>>V%VYU4%K,',T([S .8#F. :0ACE@E2A!71=&]0DJD?(*
M3+](,?%I;-_Z9?4LV*&O@F:;G7@&.[C#Z:;-HH)T5?##0='D)#W87$6-U8_M
M(KUI>[.YBG_4I\WYQ>1'IEM;76J]?;HU']+66LW-0:[Q^@Z^>U'G I55#C"W
M=SW&"\"5^8DJGA>ZJ'0)=:+P; ?V$NN<GH.;IF",N=!85YGJV4AVFG*9E^BG
MJ\AHISYM[:>F8;AU8O8LI]%X:<"<_CSFPMQK/9]Y 'O%><V'BK_M[>V]6L\%
MZ\,I\QR5.*^T.:-Q 1!5"G!S<04YKIE -<J%<"K6=3QT:L=@1\S=(/9,\LLF
MKG!Y/&WJ'9W(12I/LW^% >K9@).9E$X+,C02G7DBM.&<O2;M:TJSA36)?[M3
MRJ[&MU+.[2IEBWTQJLV[IX/UO1E?X)M/\Z7Z:$;?S(BJE=8% 85&#*!*8T"*
M H&2:PYKB A&7@><"7E/;O]NS!@[46ZR3IBLD:9MU[Z39]!Z86-CDPZW],WE
M/=TL/BM9UHCFF50RY0?C=O)ZI9^!KRW_-7X! 0T))Y^+:%T.I^-\XM:)DT_)
M<3_&Z5D(+3OQL%9BW@;)W=L^ /]H?S9L"K%6]N?/:CLKN!"4RAJPNK:U*#0"
M-"\*H'%=B%Q5YF]>61*.=!-O0T,N&HW#!JSXUJEP ]+Q<AT?'L];\X"!FVS(
M0JN9>R;,=5C%O ?[R1VM^H4;U8E+8GA!<5PGP^_UX/XIIV^SGE7(+HZ3[DL?
MM?8DJ5?F+&R\'A\7Z$W=W<--_!-]/1Q?]/N8I9K/?C$[[/;IJ_HQMT,MMS;(
M8"8)KD7%!""2$8!LT3.BRPJ(FA>,H1H6;IO>.0*)=[>69+:GV03-N&UK9S$9
M7\\Q)/5;OIY".B_62Y*,E!0VK[;+TORP7XUG!YQD\5T2IU]K%Y\+2)5_KS8V
M9>(]6S+)/MUV%CJ.,2\Q1\#\$@/$,01,$ 68TJ2N"$/<K57X>1*)EU=',VN)
M9I]N/9+@3T,ROK;B".JWNHYDO&S%=!56KD237M,6/$XK] &M!!/LE^,_*LYH
M<O_I-Z?+ZA_E_""=?_S)L,/FIWTPQA?MX7*9P9H5J,(44(Z9[=X' 4<U-_I&
M<9*70J):^L3JA3*2.$KONWWE(&0E6BVV8.C=CO]3 )K::SR0(=Y5X5I@(MT@
M@MF8]&)Q+5C/[QM7CQ=8T6 7$WU8ZW+0\$="R!G/-8#05H8U^@TPG#-0%<AL
M&*(T]Q:O=J27228^2_4,V!:D^VB\9V55/6.,'7!TTTYQT?'30T? ?#\%3/;W
M[TUB:))&2>[BQTJ0OTQPVK1V9P".DM'=WPRX5_E%G9QJB=H%?$%*2YS+ N18
M<H!H+@&MS#_K"@I9%JC&I5.82%2N4M_>''H?CVWE":?#X1KX$B"G/D"%]UI.
M.!<>M]27F).PB^V4<^-W-8Z-X>AM.AJQZ2[@L?$YN+-''SRPQJWM\]<66FEJ
M ,X@*XD07 )>*@40PAQ0:XN7%90UP@QRY'5]?TX@\;5\GSVA.H*>56V?X^%V
M:KU&2D\CH:74EWH:%]"_CNT9*6+5L'T^_+3U:\\(=U2[]MQS80OLE_N'Q>I)
MJ6]J_7-NPU).54SZO&K3;653'&G3V):&?[<\?5YM_T=MORJQ^K&<_T/)&582
M\;R4MD^)6:D"24!J70 I8%6Q6JM*4)][:3).4Q\NAX75A*&?+5?;[$EML_6.
M!3\ED&[.W+3)JY@)SZOS>%OA)I&C9;<O;&?Y,[]M9VK/8A/_\A@SW2,YFI'4
M8SH^)]6SR>%^KK#3$PRMA-P4HKIEZ^W3=[,2-DQ82I]V <B\U%"1O "$U!5
M!26 FE^!NBA*7*N2UUCZ%4,>)YA8#W?DLX9^-F#@BGCPBQBZ*=28R/CIQ2M!
M":B4["9IM&+)%\A-7"_93?CCDLF.[[V:JLE_MC=!<YX@O"AX20M0-9'"G%6
MH[RR!\$*U16WO1'\NF&E8]9GD04U3^CHO*HZR/U$.3H_7@7XX2>_-#6..Q%>
M=3WC9S"_WNK%/:/_[+6*GP$^067BYQ0#XVK49J/4F>(1'2.;#X_J?Q1;?_]]
M-:LUKF%!""AD70/$* +,WO(UP24C" K)B,\AT9-^XC.C^>)KS^ 83_S<%&]"
M5/RT:<O(L C5<168[2KCRNC0N5&=EJ',<!0Q"B8,BEC!+Y[4IXUY"8/F*-0E
M<)BT7NN/1KF9#]/&^C>UD]NTNKX1C2ZK')G_ J-O2H DJP%590DPII7$J"YJ
M5J;P6H]RE5@Y];0;:WM;,7W>582SI8S_=),MU=;ZLCE;_I8)LYW\2.7#'I^<
MN#[L:)"G]F'OYL=PFC6L[BKV==SZM$J+-AMIO-C19F4J+_8ULY/,C^V$8BP_
M]CBQ5^G'=L(GU(_M-OBU<9Q]E6VSD=HPO2X%T_ QB#!M OCVD8D*Y5K6F !2
M$G/&KI7=W*0 9O)+75*E.6=A$9[^S"3>TW9%YSN.=@G&=O6Z1%7'1]_1-#(1
MII[&CT'$J"NT$\6/AL,4/;(T@)47BCD-!^U\-.H58X;IPK\P<3=?JO73,&VW
M2P1#2'+%E0*0%Q(@I@A@N$"@K@6N-*($D=Q'U8W02JS)=I2O*>8X!I6;7HH$
M@)_:.91]D$ ?O4.1@WB1U,48I4FU@8/(SQ>[RRL!M_=?/KS_M&++77U!6A<*
M4X!E)0#*J0 TASG I: 2%K3@N5,>RO'0B5>JH>5Q#SL4VN%J&RR*WYHS9#)+
M)R0I]U FCPMBL&QAMSQW&?UN:"?%&+UF';XQW5WI)*<'%Y[33T0-$=F\>QK^
MI6DCPWB)I,@EP )!@ K" :MI"1#E=:Y*RGGN50;>G?1$82-V)_N\6JX' 1/-
M8=FC5T\ K&Z;?!JP_/3/=3C%"B09$3EM2,DIPJ\AN&0$$,<PD[$1PM3*9[5]
MSS9WM^O5S[E4\MW37S=*?MQWKWAKZ/YL[AWO6R.-^=V^VMVLQE+CG M0%ZP&
MJ#(7!4(4!N;F4%*F"B(E]4D!N(X=+_7CGS!@F,N$X2Y[Z-BSL0IO'FV4PGSY
MIT&/"K;CTE[VQ8[3X+8\5\Z2F^::#GL_;6:9RFZ'D/^UAWSO^NR8>[+!PCNX
M=]S%TW5Q0(JD_ZYD9E*=& >XYWHRTJBA1[*'S@/[1=L<<)L"_LG<[<P_VVZ<
M,Z:-!LSS&BC)<W/^*A5@A5! 4FVN:.8X1D@9T,[U(F&GQ7AU"]<]&U;-#5KT
M6%8:S=?V)+7'D,6N>(!F(LAP?!EMUP-:#/ "SV5#P/9E S[U@+4,Q#R9.<H:
M[4!VB=[$YS!'\8^/7ZXO!KJ@MBOQV\?-YE')#X]KLV9NU7J^DO_-%H]GDA)F
MM,2X1H@!4FK;:AY+P*HFA:N2 LF:0^55L]Z?A=0A%(:7ILYX<V2ZOU_UD;F9
M^4G]H=9BOFG^V/PV>US.O0N/^*/NZ'!*BJ6GFZG%K.7F)FMXN#D=43O,N6+:
M3%GVZVJMU7S[N(Y0J/%Z<&(YE_P9F-:E% S0D2,I?*2)TQ7:N-G-E\?M9FN.
M!TV;Q*WA>#,7#;>SDE)&JYP 01"R-BP!N"P0J"I2"25JHMU*GR3G-+%6'-"=
M*$'AXM0XZL37 'B ZKPN/:%CWORP9[^);VH%:-7Q*\A.< 7YI9,3+O+YSY&;
MX IWM-0$9X)1K89M)W 'JV%=E#FF.> 5TP"5!0:\Y#40@DB($.((EQ&LAH[L
MO*S5<-XS.9G5T'66KK(:)L ^FM5PQ]M+6PT]04IK-71EYC58#3V!<[0:^HX:
MVNBN#6WM@EEM <)9SFK.):- B[(&"),*D(IR@(TRQ%35%.=5;R=T4XDGJ 08
M!3UO\'T8MSDR[>U]TI#V[>QVC%"1RUHPS8 T/P&$* ,$(@@J1I""LBXKZG4?
M",4G0HK($3IMAZ.^^8M5_NO5$UMLG[*'-@[P>OC<=/F5H/@IZ!T>';6;IGIJ
MS YP9X6)UJGMF,+$'=7.BGC<^>S\HWYZK&V&*YYF;Q==83EA%.6'U3V;+V<%
M*J"N605TQ6W B22 2*Z!6;L$YSDN)7%*01TCDGB=&HK9GF3V]Y:H8UC)*#CC
MBS"6R'ZKT%=:YV7H(LY(KY;^]78=]O_:K\'1X2=9A"X"]JO0Z=E$)KC-N3MB
M\S_?#=6W2VE;-]EV,MV76E*4(ZDK6]01 B05!514%>"4:HDH%X7PRW))P&1J
M-6 )9Y:RIPI(.C&1;&^)X?9401Y(Q[>070'%5,:Q$!9?EUWL"I"]36+7T$I;
MI^.S^F/[_7>U^*G^8JZ5=YL9JX2$ N> VS,2P@H#0C$V6A?5BE3F'(7J% 4[
MGC.26)6:+QZGJ=QQA*B;?IP")S\=&%3+X\LRHBOA6DPF+NIQQ,:KK.YQ#JS0
M,A]GQ[LV$_K;W6J]M5$N]F+89!C.&&&4\!(#8?M)HQR6@$E. :FEJA&E,B]@
M6*;S,;'$"J@A..C0TF;5^I[GQL!R/)=%@L#7K>DG_16)Q.?%BIXH?(+4"R4"
MGQ?Z?*+OR#NA9Q"C,NY6"_GQWOJ9VI-0ET2&<:4Q8PP0KLTQ T)D#APB!Y4J
M&91,J[ST6LDCM!(OY!WE;#X@[7NV.(^4Z_$ABOR^)X1>]"'5!&F\#M)%V^O/
M4YIX.[\H\O&.??F5L)7\01FN-ZO%7#8WFS^;^\F7]:?59M,6.Y_IBJ*REC40
MLH  B5H (G($(.-,(28JR'*_.JX7*/I\TV'%6 U!ZQ61AWSX+>M+L!5"8J/O
M)-!5;6##N02<%3DH--8E+&!!F?!SL<6 [1IWVR2P(<R0)%0!"'5N3H&Y!HP4
MM=D[("H+B3 VIT#_#(;XV 7D+YP!,'NS7&U55GE6!+Z$I-O>$G$M^NTOSPC?
M9 TZ;SZUU>MB-UIP%#/21G.)VJ2;C:/HSS<<U]<"-YU31;@V;<$N\QO][ND;
M6ZCNE*291E5N8W.5M@4>S:602P5!C4JNH=(*^]7 \B&>^(!YND+=YB;KN6EJ
M.#YEW[P[-7LA[*@K$N'FJ3@\($MP7 T!(99:\2$]K8X) .5(X82,$7KD'39A
M_94)U>V94-"2$H$!-H=>@) P9UW&$& YHYB9ZRPCQ/>L>YI4\D.N)96QAI9=
M$(L5\SZIG0&)PCRO>2D YM3Z#J@$5',-"E;EG.J2:J&\U'$$B$+N]E=$C)W%
MQO70=;W$OJ>M@T;1-UGS><0_98W+%>UX=8;,Q.>J<6&/#U07GH^ARP:N^R(G
MF.=0 $YJLTQI)0&C' ,"<\X(KG-M1@E>II/%11Q]N99R8(C$6:Q"ENT4H0J!
MPE^Y<)-%'IPE\X(+]W($P,7GPQ;NSOMVU-=5BX)@B170Q';/Y(4Y@$AM[4>*
ML5J*FOO%'I^EE'CIOE^M'U:&<EMN]G')%LV7:$_H5[;"/8^=VTJ.@HC?4MY[
MVE.VR;TH6*25?)[.I$OYHKC/U_+E%Z[U;+=)'8UY_M.N%6!=44*0S('496Y6
M-"6 :T0!+5A=%X566/@54Q@EE]J[/2@L/2!_12O%"^BYK>EXF/@M[*O@N,+W
M/29E=._W26(OY/\>$_R\!WSTK8A&S._LCU^T5F+[19_\^RR'M:PTIP#EA09(
M2@Z84AS46&/!<DJT]M(%05PD5A%=-XTM^Z/?X",8+R\B>X45,R9>,<R9-YGA
M*&M9LHKE]%.)K9JNH*0T;U[DX>7MG*XP.1D\G0<+J-G]3?VP^N\7MEZ:$]#F
MG=*KM>H3M0SA#^IAK<2\#7!>RK?WJ_5V_H]V;=6:,U$I:(\LU'9SA8! QD!-
M84Y*E@LHG$*'KV4D]=FFY2S[Y=W'[Q_>>I31O@;;<;TU)6*>)Y\>K(ZKK&5K
MWU[)ZK A9TV_I2%O$P'L4=5\(J##:J G!-RO:'H$E$9+K%\S_G0%V2.@<%"^
M/<9XH34"Q-H&F'U0[?\/*IJ^9P_S+5O,"H9P*?,2$"1L8$ZA *\4 U 7"-8(
MY64N @)S+E.>)C;G_9W-Y]ED-D)G7U=YLU&=J681VG_* =J:ESB7!06BT 0@
MR!5@A%1 (5D*IG+*N=Y!ZUZE)@VT_@5IFE=L#\H7 ]CM8A )K["<1/F_']O;
MJ4V[^6IC;\1\H3);S*>_3*TRS\K4O4#9FUXD6_YG\&@G5LP:"*X01BN)<)'@
MQ!427 $X+IC@_&:PM<*U&^('I=5Z;18[^V/0"&RFD:J(A@J4A#";H5,!2I11
M6[DNBQ(S#A7UM%Q<QU%RUV-+M&^M:\T9P6KJ>OB=S1O3@>IMZO!LU+J; 7NP
M=6D!&6+XB -7/"/(E?Q,;1") ]\)XTBD@=.V)G\KY;P)5/N^L@%%G^8_E7S;
MG&IFK*A@044-5)57 )$2 EKR @@A8:%H+429I"_Y>982Z\L=87M6:4I.+2SM
M[I27IM_U"/X.9I7)44VM,/=3\'W5%OQO&,W>OLP4I.DW'F<JIFHV'C@ER?J,
M7T8O5I/Q$4JOLL/X961"VXL[C!QBSP^MUFO[@&Z?]C%-FZ;G^7=S0S^NX]O$
M2#3-$&S6\.?'-L,7EA77E0(ZMS<!(3C@G$"SM>4<,DZ14(YQTB\KB(^^"(K"
M_JOM&I&M]ERT'8'W?-QD:MED+#PTI?.S-_.^#85C.M@+?PDNOHM_AMGU]'PT
M+4$<*[=G)RJW9ZUL@]C.3=9(EVV->'U9]V%5]RY@;"=BULKX3_&1^/A?_AD^
MEK"C0TO'KG753OY\,/FK_>2ONLD?U1KSW;F#FU<S&]O2->!<KI:@^^> P+_%
M\OR\]/R,^XU>C+L)O4XO/0.'/JL7YR9J1ZRVF]%W:X%]7#\U#WU5\^:QF82Z
MJBI:@P)R<Y^7)0&L*@N08ZK*4N":8QFA(]8("XGO[SW-;&.)9NN.JO^9Y J0
MW8R<::'S/ LT8+7,9"TW6<M.UP9K<Y/MD&T?[IE*WO3* 9"T3:_&&'@-3:\<
M ')L>N4R4IBJVOL&S?6QOTFRA2W,]W'9^88:ZORY&OYJ#QJ;^59]4^N?<Z%:
M3JUW\<>R&:5ML&0[MC/!$$ U%.8V!TO E4*@TB2G$%*.\]Q'L:5F.'4,F)T[
MT/!F&P/NF//3?<EGS4U3OJ:Y\'2)WWY\[]!(<.?DUJMUDUJ3#5B,IV"GPC&2
M.D[.[J3*>RKPGZOZR>@&;@S"7$,?%S8LISD\6P;6ZL[P,/^IVJ@16[#EL]I^
MT=_9'S.I\THH*D %2UMJ/5> :9P#S*72@M5556(O/>]'/[7W:<]-=YL60WZR
MA6'%4X5[XNNHD=.AYJE@!X"UMJ<#5OJXH[XDDPU%6FGKB8^H5<.PB*4D/:E/
MJ_/"H#E288'#!%8%[7I7VY1I<VGO5&13N_ +7\Q_M#5=9C6&HA9Y#@IEFZW6
M0@(N<0E@#1FI::$8]@HD<B.;6/\<UA/IBKK!PO/*[(@@IDHUOI>J+&PH%BZ
M-4+8_%*<4\UK+&P#K^WD^.VB1;>AZ#W8J.:V+573P7 S]VY$Z @B4H6Y]@CS
MW6%1F,^0E+9Y$ :E@9:6->1YSORJ_<3_$(.\3D=@)H'/;;N+#XG?+M=@L2]&
M;2WD#?%L3SUB+5LO86.5M74C.FV%6R\@CHK=^KT=: %6BT5K6_X+6_^F;*!M
M5PQ@IHT6P"H70$-N]B>H!>!*&&5;5<1H6<05]#*(G">5VI3!%JH-K[_O"7M:
M<,^#Y&BIC2*ZIT6VI=G(O:/:%]N(:'.]*%HLV^IY0M/:4"\*?&0KO?S&]0?-
MO[#MX[J)^?RJ'KK>%5_T[7J^%/,'MOBX/.K:DC,F-68:*"ZX+;!3 L8) ;BH
M.594P:(H0L^?WMPD5@$!S7"NPM;_5) 4L6L."S=9Q]I3D@8X,2!(<(3PY^7%
M3A;!L(T=.,('#0CAL]?Q1[.JK3?\H?&-+^6WE=[^SM9];5Y10JIX9564[:91
M4@E8H6TB?HY4)76EJ\HYC/PRO<3JJ&>@B8%I.&BVZ4W'@T<XDP-TX[HH 2!^
MVF:'Q2\'6/3D(Q8O]A1U-,;&89CI@F'<93J(6O%X+;0J9YN3TEK8GB5R(<[J
MLI85X 47YOA1,FN'9X R5=7*K&HLG9H6NQ!+O)SCILB-@>9VKH@%A=]"/I>F
M=F.S!$:\#@%U.B^+%ZU6YPBIB>MU7A;ZN&:GPSNA=H.F2D-7.19B+'DM;-MQ
M89.\B 2D+#3(M2J1Q+2 M5]EO^'HJ:T#+2W?GN.G@7 U!P2*YVL!<)4LX-9_
M0H)H%_WAV!/?[4^(=7R=/_50<,D1LS*_;=FV">3X9(&WD:-_S#<SIFM<D3('
M2M>E650% 93D.6 ",EI5I:3,:U&-T$H>2]31;*M#-GMD3_XF>\?,P\(<]"PG
MGJMO##^WM1@)%<^5&0.0D+H4ET2-5Y#B+*6I*U%<$OE$"8J+K\2J+V3+<2[-
MI-FC79[GBBO.@"Z*'"!:6',[(Z#$2$M%!49*12DM-"#JY\P,K2HT('AM49LA
M8,[K^TKY@U;XF:HS+E!$J#=S0L1DI6:&M%ZXRLP)L2\7F#GU4NCZ;D=Z^JRV
ML[)$A$IMUF\AI%G.&@)"J\(B6I,*XYS[E8D9#IYXNQX@T@5PU)[Q&P=($%Z6
M1-824"28;83+S1V_E*!""N&BKG,(#1(^%;T"D? OVG6%YAH ()!0!2T+P(6-
M.)3V4R@D Q4L""L(1H4L_2(L0B$(BJ.( X*KM@X3S%<Y=U2:>+Z8BOB8^VAZ
M=S#TQ&KV6*ACK7KBF:O#>8>5'LW/"W6BY./MVM;1VS[=F@FV]LN=+7.F-"H+
M3CC %;/]$J'-SJ\P@*7@M:QJ515>_4-B,998>0_C68=\!@?]7C<+;LO^);#U
M4QGG8+75N3HF&[?%D,V;K&?4_&19O6G3UWMNDT001\$O?FCQ=6R]5,QQ%#!'
M@I'CC!^F:&V6T!?]51G-_:C>\LUVS80YK"&E-5?F[BD8!(ASZY4I$>"P$%#F
M7%?"2VN>I))8!>Y+>_9]E?[#3_N=AL9-E5TML)]>:G*]5CKK"&9_[TE&M!N-
MBA1)59RF,>FZ'Q7S^2(>?SCXZ&-;(6X^FRN7[<KT:<66FZ]*J/E/F_'_:=](
MJ8"(YD4)1%68NR7$$#!9$2!EP;&JB2HA\CS:.!%.?W1IV#"G<LO(3=;PT>R9
MO\Z7;"GLDMZS=46K)6>DG8\OT?'S/I[$AR[D&.*%0[QCAAO9J8\17F"<.";X
MO9^VQ*>MQV]K\?R%_3&_?[R?R2JG'&.;LR1MVDBE "T@,[.#(2$(":.*4M3U
M?,9'8I744<D>S"083M@B4QW]-%4DGZ,\KG\FQ,Y/'?G7A^Q9L]&F#7/3X)NF
M-.<5.$]5C],=[V0E.,^@%*ONYO/A7V6QS3,8A%;8/#=<4$SNLCG3/K+%(-MH
M'PS<]+.8<2$1*TH,F(+29F *P HI0%'FN":LSJ&"'B4PG8@F-W@/N,@$V]S]
MZ[] G/^G7JQ^]]'Z;@ Z*/CHH/C>,/=H#.C?9'L.;K*&A^C@>&CGZ""%*>*O
MUJ"S:8*NMG<J8TUO>WL_%\^^J>9KRE8[5K/UCM5810J](+D0[.PRTI3QSAZ2
M/0MY]GDSU+!V?[]:-O63VAI% FF(98& ,/\!2-0YH$+E0&(N%.:D*(3RLZD=
M$DA\!O[K<C&_GV_;.E#WG9W;?.9=M.^FJ^ZV7&4/;)W]M!QEL+XI*WB3YU7V
MQGQ/* /V5P4I;FB)_M0/U+Z:=07V[+"#:I^^)KMGH+M:Z\*A]%6CC<@-J9NL
M(7;3U<N+::D[+4XT(]VSX2>VSYT6[M@T=^:Y\.4\;\L?V2SLYLSU0RW%7&WL
M&6RQVCRNU7?UQ_:=8?:W&:65Y"S/@4:$ $2XM"U"2W,B*B@J*#4')J=$I3#R
MB57!@)EFN8HA._X+U@-6]^6<!BS_Q3[$Z8"3;,]*]G?+3-9P$]5@'P)#1"7A
M07QR%>(/S"D%$S!*\H9EG3=BAB4OS'\Y4+PL ;)%+*E$ DBE\US97,DZ58>R
MCH7$:JBCDJSU6 ^DF]))"T]JP]LE+%/V$GL&Q_3-PWH&7FNWL&< 7=$>[/E(
M8<KH;VK^X\[<!-[^-,/^Z&J0VQ[MBT?SV[;X[Z!B^0Q!<_:O90ERHJ"MJ:L!
M0X4$):F(0!S7A?**)O"DGU@-=63#*X/[PNFFCQ*"Y*>,>D:RCI-LW_NAY6+8
MV>,FZQB,IXD"@8BDAGRI3ZJ# J%YKH!"APFQ1ZO-PWS-NIH&5!%)(&( %[D&
MJ"(0< HK4&/&"Y$3D5.GVC7'0Z>^0;6T?$RE!X*[V(M#Q?&\X[1D+M=GN"22
MCY4W5+0P:^ZER?*TQYYB?MSN>O#&A/;54YP>VE%//A':O:WI#]9]#655XV9E
M4VC+\!-" *-Y 2J6$U;E7&K"G%?V\]$3+^ZVT=6CI>?;D6H(@<,:OT8POV4^
MD"EV*99S0EQN;C1\:>*>0R?X/6X%=.JAZ-;'F>!0"F%6">'8+!4LM;GG*PP@
MK"DDL"94U)%,C2]I5^R+"%>>I^LQZ*XV)[Z0[7 2&^%T!L%78_T+,/5=N;!M
M%P0SSJ(-_O^BVT:HOQJFN_H2WU>&W&:UF,LF[=K&_,UD+BEGD(!:U H@R2!@
M2B*0PQ+# E:<,J=FVM<PD=RV-V3)WA5;IC([GUG'EFVM/60L^WO#FF<4<- 4
MN&F.U,#ZJ90TF'JKG&M B:2+@EB85$E= ])S[7756*'GE1,!%A\>U<?EK^;K
MW-X9+?KK7&_O;"71&2V$DC6K;.$W#!"3$!!,<J"PQ)"61&GBU8K%AWCR$\T^
MWF<?Y7.3R4>5(5!E3X8%;X^I![2N!YPT@/F>>$Y%F-U8A<159OL,=95G+5-=
M3L//B!Z+$!2BG8T\2$]\6/('Y?CT%#!&:"ELMMS<LB>KPG8E8Y&"92V %,@<
MEFB3JV!3P54.-8:PR)&7=CDFD5B'M#D\'47?ZM5'<+AIA.N$]%OW!_)%-"Y<
MEB5:P>@C A-7@3XGX'%IY[-/QNX;T7UNN*Z+$D$&.,V5#7K$@".A 91<*X@(
M5;GV*WIRB:3/AQH4%YZPCX37&HT)A*<Q<*RG1((5["II\A83+[&Z785W;S=Q
MO;G^OU8+R9EMZMOG(=JF:>\?UVM;["-GBJ+<'.6IE,+LN#D!I$0%*$155WFM
M),'0V78_2BKQSMO3SM8[XAX&_7&0'*S[T43W6]T[J0=TFPI)-UE'.QH('CZ_
M:&"$^0"O ,7/&^(DYZAK9'R$Z?PD3I(<.$W<WKB^2<X@3%MI4>%" ',3H #A
M2@">YTT;'*01)4I!K^*Z)ZDDOQ\,>RV&M[?QC;*^6E;?:\)![[HT(=.C,B7H
M+_-" ="C8H[U@XD5SFRK%VV?_J*V=RMIJ\:UC:6__+XTG__=_.%6F6_ J.@?
M:L8* FE=<9"7UM=1P KP$FE05T59:%QS<X_P6:'.E!.OVI:/[+YA))OO.+G)
M5CTOV<..&;]5[8ZNVTI/@IG?ZN_@:GG(/@[@VK&1W5Z&RULA>(L>24FXTYU4
M<7C#\5R9^ \0IF ^J]^[RBGFWG.[7BW-CT+M/+AWYMM2FX_+X3--3RMSY-CO
M@ZR@A11E#61>0H!(10 5.018:((4U9!HK]:7,9A*K)8,BQG;T;=-AP=,^FFA
M*%/@IJ"F!M9/=^W)9M]L""Q;RTWVUP?K;&M#.QK^;%WPP9,[#A.==&)"%DGG
M16%I4G48$\3GFC+JV*$AF>_81DG;($PM-VW_@_7:$K9LO'O:/W+;)LZ__=U\
MVY]7RR\/31F21M=_7&ZVZ\>V<^ ^!MQ6L/S#*/OYQE[SG@60_]G0V'XPR^-7
M-E^W>=R\0K8>90Z(A!B@6A' A2VK#CFMBT)4D%8>%49>E7#)+=9-'.(PJ;Y1
M.VK/XDVF;-:]MB?.^:I-97G/EDS.V3*3J\6"K3?V;VU^BV, WNL#VCFD]K4P
MG-"$W\3S-D)D0T&S@:09?\J&SW729HVXF9$W:P7.NL/Y0.1A2D];[7@O=7:4
M$-0(GEG),RMZ6Q;AG_8C\S!JOBK&TQM1=Q//NHG_89D S4%(VXEOJX88/;1<
M+<&J_;A4^W'-!Q_7B":+537G5<[,Y8CX5\/QQ.'XKT;N4V;MU\EAH,/_;K7>
M]M; 3[L"N00J7955 <K*E@&5J@"T1!1@3D0!6:%XZ97A>YI,XKMO0W1H8OX4
M6ECX#$J.?OVK9?<]"@2([>_#'Y4JEN?^-)%I_?6C@AYYZ<>?OL:Z;I7-:JEV
M34G+4B@.<P5X;A8JX@4&+%<5J$A9YX(60BNG9-E1*M-8S7=$ [NUG@;(QQA^
MA=A!AF\/B0-MW&<DBFK/?D[C!6S79\0\;:<^][#?LI1J/OO0'9AOFPOV+TMI
M-^49Q3E%6.> 5@(!5! ,.,[-DJPHQ8@S+JA3B9ZS%!(OQYYFUA+-#-7F&N>V
M&L_C,KX2HTCKMPJ]!75>A!>%.;$ -TK\VX_5SW\W[[9KS_RP7W+G1YQDN5T4
MJ%]JEQ\,V_UNURNAE&P27.R.NOFBWZ^5G&]GHA2PK@L&1(EM"T(M 5$(@;(6
M"-*<UKCR*LIWEE+J9;=FOYN3O[D(+[/5KLO-PG+0%)EM>&ANQHM=;(AFHFOY
M[K=5GD?3;;N,@I'?8NU)MGEMGWI86K+QMLV+DD7:.L_3F73[O"CN\RWT\@L1
M<\MFC%=4RH("C4H%4*5*L[9E#J1"!69YH27WRHD]227QNG[/UNNGQJC5%(R.
MD!=V30)8N@5Z.M,K<297Y%5YFL;+YV:=6XWC#_NM1-%$9(JGV>VGSS-2"Z8J
MS(&4MLRDT"5@.B\!K[$JJJH@1#N9?H:#)EYGMZO%?'.7_7^+U?;);9$=2#R^
MID+E\-SC5N:?\J:50=Q=OW9.L3UR].P?;Y=*_Z_],CD8;I)5<4J ?A&<_%N@
M 53<*?FX4%_T/GQIT]8$J+% 2M?,;#R"M 7>F39;4%W7"E%5".07JGB>5&I#
M:$?8GIH&I,/**XP YF@/C0*#ITTT$ %_L^A%X6*91L\3FM8\>E'@(Q/IY3?\
MEO+&^F2VYJ)I1_HFU)*9R^?;/^:;684DA:5&0-MFBB@O.: UA: JN>;F+(M1
M[A3P=Y9"\H7;DLK^;HDY+M3S<(ROSRA"^BY+-_F<E^%%&<96GWEYL/(VG5>V
M677GQYUDL5T4JU]CEQ\,-W5^-Z_.(-,*,8X!9(0#Q(0 I. 5@&6EBQP6D&.G
M:]GS@:<R;%I:_M;,1G1W(Z:O0(&VRU%9@@R60\:OLE,V TUNGARR?\HJ>?#W
M4']Y2M]_6VEW!FE1:5P5H)** 51*LVT1PIINW8K"7-%2S=K0/K/8UUO'X^<$
MK/M\]<\%<%X !^6EN?HQ7RZMD>4PW#&H<O<DLUL+"@73&$@LS;4"87/!$!@!
M2$M98JFAW,WN+TOYSSRW/?MA,WL<POIZY]3QYO/*9LGSL&99 XXAIN!$B*GM
M8KT$9V-,;P[KQK?BQ Q8F0[\:.$O$[ \<3#-=)-P')HS(>WD78&^;._4VG#6
MFL*V;0W &15Y3H@J 9?0',]S2H%-IP :LSQ'BI?*KS/'M0PE/M8W- =.4=80
M3=9 Z#3F;KI_2B0][Q/>S85:V%N^&J4N8I7,B(W6]+V'3K/S6CL1C8)W15^B
M\7$#O5-OOWZ;:<(UA; &4.$<(&E^HM(H.$5R*%0NS"^<[ _#01,KJ;?K'\KB
MP[);\Y"G?\K*[.B?\I3$3TGLA+AII(A0L?P4WS$<5':X:1U4 P&.'%3#OX56
M%&]:?-FHB][G^[?Y]N[]XV:[NE?K7_[HUJ%=8^:_\CO[8U8J4K*J+ !DV%PQ
M:V@.!+RH0<T9%@)7NL)>QX  'A(OJJ!>@2%0NNWNB0'R6ZL=,VVX5,].]KOA
M)^L9NLEV+&4]3YEA*F95\&!$HA4%]^=@XIK@P1 =EP0/'RHP*G/76OVM,->B
MM;I=V]#%[=.M^1:W-HG)_/;!/C(K9$4P001@F$NS9Q,)"*TJLV>32I=8Y3F6
MLZ7ZT10K]XC6=.; ::G1=JD=\>$>PF%^?V?NCHW1JF/E)GNPS+19C3T[G@&;
M[D"[Z:K(N(6%NW0\V&+@'1?9[0ZSAI&;-L_X(FC^<9[>\L<*_'0G/&TDJ#<@
M1Z&A_B,D-Y#\62W-3PM#_*V\GR_GFZW]_4_5%4TU9R3.:8XDJ#3,;:E <T8J
M2@JD-+H)2HQ0[M5F*1YKB8].'?5F>;$#^LD,)Y?F(KH))2+"J8TIP^DX9+:O
MP/PB9A5'!*<WL%QB[+6:6AP!O<+HXDHA3/6V-IR^TF]9"LJDU("HRCHQ2PAX
M7B(@"TA+*C0J")QM5UNV<-.>!Z-[*< =#><U^MV^DG6FJ2";\2$6;MHK6$)/
M0TUGE8U6Q7B4_TC+_W#L25?P2;&>+\+3#P6FN[#-G3D>_9Q+)=\]_=5<QCXN
MO_1)7V^%6;!-5M?)%;Z9$9GSBN0:Y(C8B$91  9I#3@NRH(C383P2XNYAIO$
M!Y7/:IL)PY^]334,6N_RFT=KJI@O_S3(E&,[/NW=2PXWVM6.6<_LFZMFR4TC
M3(:]GP:Q;&6W0\C_VD.^XR[KV'NZ.7.NB9C\$P.E6$E"5_$R;3)1#-B.DHZB
M#!KAZO=^8;;MN9Z+UH=O@YMA74->5Q04YNIF3B2L!@1R!:JZY!AJFG-%@N]S
MQ_12!ZP>W".R0_I>X>"N^ 7<P:Y#Y9J+E2<@UUV4SHN9XO9S@MK+76G.BSYZ
M3QEY+69]^:^*+>;_4/+/;+[\M-ILOBQ[+F:5PI7 2H&:J\J>DR3@L*I!G1,L
MBQI37)$ F[,O']-8GBU-6SO $&RLS_OJ\UV3;>(9,^D-MYOR2()>Y/+S/3>9
M92=[8QGZD\6VYREU*?K+:"2M2#]"_A44IK\,CEM]>H=Q BHL?U!:F1NB;*((
MFQJ]7?\WE6,N2EP#ALQ]#=G6WM16":H@IU3HFI3*J2O-*)74!Y)O?W6\0HUC
M,:XIHDGH>;CH*';E<=OZRA?[WGE([5%#-H;T8>5<3Z$0J?SJ):%&*Z&>?7FZ
MHJ27^#^H#WKQX; S4!-3=Z9#7\Y87>04D-RFE!1U 6R"J[D%05)2I"I5>5F%
MSI-*K67ZL)6U6C3=ZA_8NK'KM.<8B#P/,B.8586FFD ,:LK-"5%(!8BHM5'/
M2B%F;=BD\.MD&@>UH(KP ZK1 '([T\41VD]=M_''"3OWN0L7Z3 V0FC28]=E
M@9\?L!S>2.[J_Z >UDK,V\OF4KZ]7QFE\8]VKR4LKR0O<X!+>Q&4LC"GL$J"
M,L<%*62%"/&J$1>'K=1J=$"Y]?,/:"?S\H]-0X!U:1)PKS%"N7CWCV;BK<M,
MI'3L.P WO5-_C*G7ZM!W /(*9[[+Z&&*U=!=W:M=E8AWS'SB0GV[4VK;A [(
MN27"%I:MQ6KS:-;#NZ<#SC?CK&\:>[*0D"&**\!8+FR''PP8SA50!<[KDF*(
M"Z\SZ31L3VO6_\SN59 Q?Z(Y=-/:KV]FKG(MN$R*MX*>%J-("GPBIB=5\--.
MQ/,-8&+J$]<X:;.D-UW[$MO-KJT#W01<?5QNU_/E9B[:KDJE** J2PE@"<VY
MW%RX@:W7#')S[V98HJ*HO3IU3\%TXLVA9T%.5.#"9[K<=H+7-@E^^T"$ A>=
M'#?93A+;!K25Q5X7.D$N=$2;KK9% .XO7=O"A^5_CMH6 9,0K;9%".T U]@G
MFW6F=J%"GY3AX].<<5O"_NG[ZIVZ97/Y5ANE^3^*K7\U*W0F<JVD+FW]*[,W
MH"(O 16EL@''D$*6T[+&SDXS?_J)=?WW.[56S!+T<"\%H.C@;DN+C9\*;GFY
M&00:-NS<9#N&;K+OJ^R=RBQ3-UG#5F;YRBQC:;'T<.*EQ33,O9<*6S]/8#@R
MHS["@&&G\QZ&RWS@5[QBF& 3_/$-H[W"V*@)FVU\\I%W2J_6JGW0YM!C@@O)
M"ML6R1;M,/\"A%(,C':7"!N%+FS14/=DD4A\>:EX_S23ED[V9M&$$#5>S3.A
MZ1EO&#-'Q>:-[4@>?M)Y<C;23XV^MSWGI"V^GY!/^PDY]V@W(=T;40LC1(8O
MGJT^"E=3&^MC0GG"6A]U^"O"/NRI?JWNS,%^_E/M6?BLME^T(7%KG0/FO+\U
MYW7^N+6.V.^K6]:X\4E50T00!6;+% #)O#+*-\>@8IH6E208V^ S=^5[)3^)
ME6X;&B"&[/5JM57$ >$15X!?LD)I132HN-  :84 S<U/)%>*EX@0[E>(9TKP
M0\OQO1KP/0)8IH$T),KE@+/#+:R)>K'QWH;#FZSC,1LR:<MKM&Q&CHFY'J^8
M@3-7<#-]=,WUT)T,P8DP;-C^U-] YJI/D'W+-TT%HAFJZYSFQ.PU7)FMAP@%
MF. YD%!AI%F=2[>XY\ND$BNVCEJVV#/P'WZZ; 0E-S451W9/:\R>YBZX+OM[
M3S>B=_2R<)'4Q0BA237!98&?+W*'-U[&VW?2:;G[N*6Y\4LB"8""F:M_CAE@
M)26 0(U+A#$LB%-'Y$FX3:Q%_J;F/^YL4#/[:6X*/U3V8VUK@TFV5?_Z+Q#G
M_ZG9?)W]M+;V[,W[#Y_;7_X_4]6[=YK/:?R T6;IY1R >Q&R@0Q)M.<D:+\2
MM]\XK_]4_CXGV&,[^MR(7M%_[<]J9=3:P]U<L$7;@ZW2F-4$@@K:+HKFX@LH
ME1+@FE#&D(2,.M59&Z626',/R87W8CN"9ER91A/83PGZR!K6E^V<+#%ZLQV-
M/7U_MG/BG>S1=O;A0&-A[QSJ:GYM9H(00KG40!?*',!X(0#'N :5K;O*R@HQ
MSKS,?\\II#;H[;R5JB/H:40Z0L31+'2-G)Z&GIV(OUP2T=]:<TZ,6/:7H_&G
MM:B<$^_(1G+VP<""%/</B]634M_4^N?<1G">W)87S029G[[HKTJL?BQMTGD;
M8/-^M=EN/LV7ZJ-1!)M9SG*J:G,[0K6M7@-S#(A=L'5>8[-4E=+8RU02F;_$
M^VM[H.:'!^K]F>:F7QBR2:%YSQ[FVS:!_\;FTSQ:JX1E-6MX]0RECSV3;NKE
M!><G_$Z4<&K\JV>D 3!6<8W(W$U;>R,-M$>E.1*1"5/HOZ[6:OYC^;YKW/'=
M?.$;6U=PM>R+A+1N71LG ;5DK-0ED"6TZ?:0 E[6$"BI$$>LUJKD?7$A-W7M
M0=UIJ1^6%/)3QATOYKPE[NPRS][\8+;XG_7@^:E6'TQ+Q:&D%06UK2IK8.2
ME<K&?%:\5 P79<4""C:E!3:@5M-?E^N^PI!^#G1:A!$B6 J1 X6K"J"JQ(!K
M<Q'/2TJ@9C+/8=XC_%DY-I5-BV_/1OBW:S_==)"Z[?6Q,0J[UN_+6=UD/4P]
M2]F IUWP4]2HIP ,(FW%/I0GW68#('F^A88,$6A8$//3I;2:>%.[%FBN)&+$
M:):"FFL,U1H8C2X $508A9.72BBO4)=+%%,'L_R^-"_=S1_:ML,VSD*U5>/N
MVZIQ^RI[F_\W6YT(??%7YY=1=C1>Q,3.TYCQ_N--=KZ\7I/R$%>U. L;R^1Q
MD=ZT)A!7\8],(LXO!CJ6Q9V2CPME#^Y-,:=;MMX.==3FW=/!7VQ0R@P11'A>
M,*#JHK:&$*M&2@'JBDEHSH:T]*O7$L1%8M72T<L:@L.]-_M[0][3@A$&M*,G
M-S5\?MHE'#E_K^HUDL?RE@;Q,*T7]!J8CKR;5PT6:,EEZ^5\^6-SJ]:-">+#
M?/%HQI]QID3-& :(,060,MJ(550"P2GBA5*,%[F/X^0,G<3N$QLA>A""FSV8
M_;<]T8!,MCQD;\S=0*X6"[;>[/_N6S/X#(Z.]M#KT?'3)#U!FYS=!G385@8-
MT8A&RG&I8AD;SU"9UF@X+NJ1\>_"XP$1"$(MV7J^LG<BP3;;OO:N-*L6"@J0
M1N9N4C().*,:5*C,:\I847+N''YPDD3BPT)/S"/@X#02XPLQCGQ^:["G<[G4
MKE^@P:@8UT09G!YXNA"#4<$.X@O&GPS(X'^O-@_S-?OVNY)J^?9=7]=8<EIR
M60".L :HY@@P4DB -:]R\X,4;E5<SI-(O+HZFEE+-'O[SB.%_#0DX\LLCJ!^
MR^Q(QI#2UF?FWSTE_FJAP[+>W2?8+X]]5)S15/73;TZ7C3[*^4'"^?B3@6T$
MA;!>X<V^9.R@Y##EI8*BJ@&LB;G\XP("7DD$L.!85A5%1>YE0QPCEEBQ]*2S
M]8YV5\0:>QZL1Q'CNA*88 ERA"1 G!@%7$H%"D0JJ@EEG'IE=T9#S/^J<@*Q
MB$!16M00XQ((6=L FUH#PLQ'EBLF"J5174'N5^X[%E1!!;_3@N5V9XL%@-]N
MMI-\3[8W*]M@@=]M03WK6LW>KY6<;S/K!4G1#M-!^%C=,<=(3=LLTT'HH]Z9
M+N\$MM*T7"^W;=;]U_GFMW=J*>[NV?JW#ZM[-E_.M()2("@!RVMNCJ=" :IM
MBS@D2,'*0D&_].M+!%,?5H?D,TL_VS&0_;UEP=-V?!%"-U40$QC/P^U5F/AW
MHW04-%;#R4ODINTIZ2C\4=M(U_=>:T'KUF,"*R1U32&H!*KM9;<"5) 2T(JA
M/*]*G$.OT^E$?"=62H?5DS>7B^)OPKQ<4\VRF\)[A7/GIS<33-LK+(J=PBDW
M%=?_EY7%'G7\34W^.MO%+7NRH_5Y^$OYV8#<MY62" G!"H"*PES(L;F04RXK
M %7%9$45+@LG?X,'S<0*OJ/L&<KD@I7?-3,2 H&WS8YZ_ ND@UB1[Y%C%%_D
M.ND P;E;I<NK@9?+Q_O'A=$=/U43?[!HTQ'D_WYL@Z1VA76:5 2C?-:V'.<'
MU?[_K!:R9C4A %*.FCY\@+*2 :(Y++E&-:&5G[GI*GZ2VZ/VW&7;/7L9V_'G
M>2V]"GS'.^M4@'I>:/=(#OC*]HP]*_O5L)?U_&5O>@[/6YG]+[TQD(IU([Z*
MEVFORS%@.[I+1QDTP &\C\UZ'G7>7)MT66JA,05E:1N/T@(!4F@*L*0,8:UY
M73G%;3K02GS>Z8G;)7:4*.%U=77!S<%=' \-/TTT+1 >KN1X@(3YE*\"QL_-
M[";JJ+_YPA#3.9[=9#GP0#N^XA\M]MY<"5>+N6QK^MK\T<[>C46)8$ES(!@Q
M][="&CT&86T=JH6YOU58\-PU7NP<D?1N@CW9-O':TSLPBM"XQHHEM[<7P%]D
MKZ"R2S)=$59V=NC) LLN"3<,+;OX;*@1?Y=-]4%Q>Y-KDU.^*7.=:\H>>M:@
M<Q\PW6<YX,&V@N7;IDA"EQVU9R1)53A_^:/91YT)3VSB] 7DV$KI/4+ 0=NC
M2>Q159O=&C%[%2ZAU@#7MD2!,GL9$Q0"42A%"JA)413.Q_$8'"7>\X[+1#D6
MZ(T'N<-)?FH@KW$)N72W/JY<Y:+*$N'O<8&8>A["KADQYB/2-20F8*.7E2B$
MIKO2Q,3EX.(3=>")-J'#AE0#/X]4G-.JSD$M40D0%1QP3&I0B[R"4BE=*:?
MB>B<)=Z4/JV6/X!Y[[[O]606YJ*QT@X*R2=6DV<G)=%V%0/JZ;:MXPYX>XY?
M:F(2[V,Q)FCZ_2QHHM+O<9? C+[7G27XNO>\2SA=O?==)! <6GC@0/FXO%VK
M!S:7W5X[JR2L*<FIV=5*"!#F&C!9UP )! L*(22R"BA;=HFNTV*]NE991S.P
M\NY%[%SM.!&@"+3>'/E4FV[>'2H=_:CA<$Z2QHMC&R<W=0":D_ G(L?<W@NL
M#G&R0LYF'X?V7?VQ?6<$^6TF9(7K6MB&U=BH L4DH+RL 6-2*HTD)<+)<^!/
M>K)C[*#DE6=Q"'<8W;1"&G#\],.Y*E>;QLK[OU;SY3;[;_/OIO''GK/L[Y:W
MK&$N9D%<;T1BE9]P)SQM10IO0(Z*5/B/$*9ES$EGL[E=K_1\.Z.U5$+)"N05
MK0"J2P)(7MBJG;S&3'(&Z\(GHW,PMI>>\$_@;"AE#PTI/_4PE-]M_0=*Y;?
M6X%NQP7R7J@G6(^T$H<C3[K43HCT?"V=>B0XZZ\Q;SVRQ1>^F/]H+@(?'LW.
M_]DLQ^^_J\5/]1?SS-UFIG,N<<YKVX#0;,F0,4 01$ Q2J4HJ&"55U5]=]+I
M7?P](]EJQ\E-)A]5ME#FH]W>L64&LR?%UMX)@:[HNJW4-)CY+>0A7%\&<&U7
M&5?9K3DMWF3_8Z#*OBPCGN?])8^7->A*>.K\04] 3F02^HX0IF0.+Q%G,CUH
MQ<WU'^ FQ!MK!#BK:B"Q)ERKJF E]%$NETDF5BK77?<=$'-3&'%Q\%,4R>[V
M[D)%T@$.!"==^^X /%_S'F^&=D!=K;??S?W6!G5\-V,TS=ED+2@JM0"HLLN[
M1@)P&PU(\Q*3FB'(B5?M@)-4$J_HAF9[=;=4;S)+UZN!W3A&;@OZ:LG]UG K
M]'<_H0.:;HX(%:U9YBD:$S>Y'!'SN#GEV,-1<BYM-J@0ZT<E!PV13YF1<L(D
M0U@"SG,&D#1'?VI+)#$N5"E47@OI=?0/Y"/Q M^E)SZT;#66)]8RYN]DOA9S
M-W4P 9)^"N-YCF<#8L=3-F JO0WO2FC2Y(DZ<_&2N:.^4%W()_4>+IURZ^O8
MEH) P34H2X*-/D,5X-2<3A@EO*@U1A!Y'4?<2?]?J\*<"G:FQ2N1HHI73S=<
M_ F5T90E-,,!"5$Y44IN?E*;C5)G0B7^NI0VL,(PHLP52YA'V[:-,\TUYLKV
M\R&EC2#/,>"*42"$K#$2C!NUXZ-P@KA([=DTA/XCF]\_-%7PYX:Z>=C3=Q&&
MKIO228Z9G_YIV1D/RQIRE;5L=8U XRFCJV")I)?">)A415T%TW-M==U@UQ1V
M^\[^4!MKH_^LMC,.58VPN<?I0I0 L;P&I$0,P+(HE91U*857>9UC$HE53D,J
M>VA<#LNVCH/Y(!^7TC^ZZCDV;CKE.HG]%$9+*VME;MTLAE[L F*G9(E:Z^N
MP N4Y3HEX.D*6B>?O+9]EPU]6)J)>.ILKTWN]?[63Z7,RQ+70"I4 (1P#KA4
M%."B4E0JQ8BD81V[Q@FGMIT.DOQ[1KRO(<X@.EI2$T#C:5P]@<K3KKQR5_P@
M2V(<\14^>@^N"V1?J.V6&QCG.VTYOA]HX#"'ANWFB_8(Z>YKD..2YK!4"I :
M2[/34PHH9<1&1%64L8I7A9=:"6<E=2Q'MW98PV!VIQ9-:^C,\-BW#*A\6P:$
MPZZU,-<^:U@RVAL@;:Y]K" 8:%J;DY?62!3$JZ' -+#[1ZL]@UTLS ]S/3>W
M%O9L$B;#WM$2-0FB?MN"?VI/*T6*POQ7PQ/+<A7.R+26K*L!.[)L73]BV'9C
M_8X?EYOMNLE.>\_6ZR=#L#.YY'5):2XU$'FE ,(U-)HM+T"%I!(,*JDI\]%L
M8\02ZZY]1+XT3/CIIU&,W#10+,D]K4]6Z(%;OXDHC:<W7(2*I!E&24VZ]EV$
M?KZZG=X)S+:Y?UBLGI3J>KP.#.']%EGAPEPS50DDQQR@ G' 2RB KC0J,:J)
MXEZGPHL4TWN_&N_- WLR0RP\LVHNPN6VGJ."X+>H>])@W75V'A!/<#APEC16
M;LQ%>M.FQ+B*?Y0)X_QB:+BMK9"P?;HU'T=?5^G!JI=382:$(U8*J$%A6\6A
MG$A J+FG(%XJ(0I12K^N/C[$$ZN#GI6;[,$RTSAX5<^.;SRN!Z1N>B(54'XJ
M8X_1[0ZC'2?I8W1"0(@6T^M!>N+H7G]0CN-\ \9(X!&_94]MFM^CFLF*0*U*
M!H3*H5$U7 %>PQSD-2-4*,U*)GWN#*Z$$]\?OMM7LL>AJU:PS5VF%ZO?/2W<
MSE"ZJ9@4 'E>,QR<W/N\H8F<VB<DG\*//23[>ES7)\#P\E:?>C\T<X"MU3LS
MMGR_NK?I"6TU]O7:?%!M(YNG_2,=V;>_L[7-7?CR8)]M4XSWUZG-+W^HM9B;
MQV>\($+G$@%9,P40(A6@%><@UP4O"HT+GK. TB(I>79:E5>7)?EOM;$:JSD;
M]92S-_-EMK%\;SQMY4GGT-&M]])3$IAG85@"#4_9D.]LP'C&G[+A<QWS6<-]
M4\,)M +T17$'(MQD.R%BIFVDASI:]D="5B=.(DD/^G$NR@0TTQ96[$K>__*'
MN+-,_YG-E[:9\0RB$FE,:U"*F@'$= XXA!3DA12,J)(4M4_-J4AL3:/[^W8+
MJJ.>+<:,P$G@']?I4Z(YD:NNQ[SG,;-,9F\LFXY[;2SHTY1&C# %4Q5$#)J*
M9&40+P 7J_CA.3*OLN3A!4Q""QU>&C;L_O)9;=NXP69UU9PR7IM]I2BU!@AJ
M" @N,,@9S952N2@H]S%V'(R>V*)A6Z+-VVC3-W9+^%,3O;&]4]E#TPG+[T[P
M#)=:YXK6%##*;"\_R@ M% -:2<($*207V,?>'(Z+_WZ9$A>WRTVPM'[;FA6T
M"S=NU6'V=KM=S_GCMHE(W*[,W2.N+^FD8)'._H=C3WI8/RG6\]/UZ8?"E- 7
M\S6N=U&(MV9^[^R9_,^KE=S,2EKJ6BD-JC*O <*J E2:M8>KDD'.BUS47EE(
M8\12^W9Z8MD#6_L64!P%R6TAQA+=;UTV5(>APGL8&LK1XSA<Q(RT2D=)3;IH
M781^OH:=WHE9-=46;-DUCU+='Y3JVHHQ)'BEN;1GC@(@&^K+L;G5UD20$DM4
MP=RK8$, #XD5P+EZH6TM\P%76<^69]NV:^!WTR&)0?53+2GPC%1VU0F1I/57
MQSEX!858G2!RJ\CJ-E28*NLB7LSA<?O4=-QEHC$D-N%NFR]Z\+L9AA"6T%P4
M:%D3@&0I :\J!"B2!2XK<U>0R$>%>=!.K+H&E#(VGLU[-8INFB@1-GX:J&,B
M:[C(!B1ONISG3=.G>__[>'HG0/Y(^L:'\J1Z)@"2Y_HE9(A U_%V)7Z[6RW,
M&YO>T] 9@&Y7ZX;HX/[Z?=7JN*T-$C6/?.Q*%>R:GU6V_7:N)="*,X!X10%7
M!0?$W)O*0NI28NF5A!F5O<3:J7'D=,S^Z[^0 M;_V43-;9\<FP FFA1'[^^+
M01URW!I:J3OVCBPMAQQF/8M)VIRF02^6"S<N<],Z;9, >^2F34-EXG">YG]L
M6(IEN[&KPIF4!:>2,&"P-QI9V4;BE:IM# _37#%6%E[WV9C,)=;'';'.Q-R$
MYMA"Y)-%YIR:#D==_$(@^VGB")$WS?]E_43=COL"IHNR&8'QI:-J3K'VSQ%%
M,P)JM*B9,1J!N9SNSM%^&^@;B^455HA3!"IB3L2(*G,8SADW/U%(\Y)P(HN
MR,EPCJ:)C=F=LXPF6%R3(1J.O)N630SD1&$Q.[BC%XN_'I]8B:KAC$R;QGHU
M8$=)KM>/&! <^%_S'W>W9BR;Z_*^/>9NOCUMMNJ^+U8*89WGF&C 2UW9CC8$
M,%AQ4&E%"JXD-L=+YU;*%\DE/B=:^J!G(.LYR/Z5W3_\9]8QXA%@=AF]<?44
M'Q,_%>0"Q^72KB&X>,351<4G+&SNJL_&+QC.6=K16+?+HTP7RN8LT4&DFOM;
M4=ML#IIK8E)"K&SEZXH"1 H)F-(40%E6N=2,L*J*T%SS)8K+[>M:#!B)TEXS
M4E/-%VVEF;*BG*N\:1MEOJ[VF*%-,6.EYI[- K853IDD"-IRU)AQJPK*'-"2
MUT"44-6B5+#F<3+_T]>!'<WT[\J^44^#V2AVD% I*"E!+84 B"L$6"DJ4)2$
M5(1CB$0^^ZG6?#4U>D.B<?"+"%N)M:R01*#49L]!I9* YK4&NI0YY4R5.:I]
M@J*C?7)A,=+O5JO?LO]FBT?/JG:C&+GM+K$D]]M91JM%1"Y'[")AZE(0DY<H
M=A':N=1#A++%ZH<=Z*MZL.XCZR+2J_5]<\'X-%^JC_;(.BMR711Y58.2" 20
M9A28$Z2Y1:.:2R++LH#*RS?C0#3UB;)E(=OQD V8R/YNV<@:/GP;O[G@Z>A<
MB8R2I]/D>H#\_2 >$L?R;[B0G-9OX0'"D3_"Y]W WNMJ]6/-'N[FXKV5Q_:7
MM<-_G6]^ZZPC-91&[H("!:$Y=2*A !.* T%@)936B"'BHRTN4DRL*O;TLP,&
M,LN!9^/VB^"YJ8:HD/CIA5$T$G12<A8U5E/XB_2F;17O*OY1 WGG%_WT0-M#
M5CS-/G[^.H,225I6"."JM@WCB0*\R!'0NA1:,82Y*%R6^G#0Q*OYXU+.F?E:
M'Q^4XYG^0.+Q]1DJA]\2;$2X:46(8+D]Q?2)Q;11XM]^K'[^>_]XNYCZ?^T7
MTL%PDZR54P+TR^'DWX+;ZZQM8:0/JOW_C\N^)=E7)=3\IS6\S:J:5;S,"6!Y
M:8[*92$ A[4$55U@@A#"%2H#?.DNM*?QFN^:ZJUWA+T[\5R&T6T;C(9*:+>>
MAFKVIJ?_IVR^S'8 ?;T,4$@''V>)X_7TN4QRZBX_SB"<Z/OC_JZ?GMBLM[.W
MFSGK3G*(J1*+"@-."EMZF3% K">:%26N&&>R=FO(<3ALXMW1$G);SL^D'5^P
MX3+X+4E+(^(9]#3;8^O*O#%84YO.O=FLIV>#3;)B3@O0KXDS?_7_ZM_OLLEL
M':C%_'Z^;'[L_>65+CC$7 )6UN9&J$L(B$V^H)5D7#*HS<'1=2E<H)5X?1Q0
MO\F&]-V7S26X+J^EB"#X+; 1^2.O.T<1KUB,ERA,MD(=11TN6]=70I,X^ZUP
MXYF<<^+-=!_C@%B27)D18:+E!AY3F#@'\*R(Q[E^YQ]-6]CO=KV2CV+[-V;C
MJK=/30\(MK"I+5W;!E[H.J>U.5O17 /$S:6+$'/4(KD2O$9UY9A(')NQQ)M1
M3]>_[7OT&1C7#B^)JY]*\0]K[GC-=I/1<=M65;C0D"/MI*0I_Q=S<J:J WC5
M)"6K!^B*9*S"@!?IO<H*@:XHA98*=!X_N&;@>[:Y,U1^SJ62[Y[^NK$E-WXU
M![:EL(V@Q';^LVT-T[)F?K?C;7_\HH@RK1 !C%=FBZN1!K0H$> E457.2\:A
M5T!G'+82;W [;C*V8\<S13T2_&ZGW^E!];R]V:85/7<VX_&-93";+_^4[:'N
MF+1=BG=,[G5IDH-V7-SBU12,P=34Q0@C GFBBF',T=->&KZI)N7][5+^A:U_
M4S8:HL^Z4Y@I5-<YX$07 "F- *4E!0PR2 M<D0JZ)P5%82EUL!.S5V0;RG??
M$TYS)!T!/>X-(0Z4J>\&'9>983/;\7DQ_S'5#*2Y#L29B:DN F$SDNP&<!F\
M6&?_$4JO\M1_&9G0\[[#R $[TWNU>9BOV?]:S9?;_S8?\N-:==9\7 A9:8)M
M,'QE_J<L ,\% 5"5!-:E0.;WSKO-63*I_1XMW:PAG'64/338>7@<]H4H0GN>
ME$_)&Y),>EYP#W4<!8 P%>LW\7Z*\J)8H\KO_-O3*;2+$APHJ<M/!U8$[_NV
M#8K-0XD8E!""4@D%D. *$*YJ4*!2"ETK6.;$)P_G! TOE1/2M'VSR2S>F=C?
M0U>[ZX1G/? 3$*E*UTP:G0QMG2ED(Y9Y(6I0,LQJJJ!4%/>A6FE!.@S*\H-I
MWW?1]BMP=0",X>)FZ[CR@_!3QWLA#WH61*R"?EZ:6,7/3U"8MN;Y>1&/2IV/
M/!IP-CJ.N>J-K;L>DS-%BJ(B1E_5$$N &$. V[4I)65YA1#EG#F?DAP(3NV:
M>_(X,[C@Y7!LBHR"WXH]%1SY<;EWP'Q*A(O'J2HR/F'GJ^MQ\CMS>0@]>OIR
M&6>Z<YB'5 <G,I_W0D-IMFR^5/(7MEX:A;IY*\Q7\MA43?Z@]%S,M[-:2<Y(
MG0-")3+G$%@!8HX@@#(N%)*Y$KCT*X-^B61BY3<@F,F6HF_Y\XN@N1U2XD+A
MIP%[VEE//'LS!*:C'_$,XRYLM.BEBP0G#F9R!> XMLGYS3 U\%;^[\>N\H?U
M++/-79.+^7WU55GAY@MUT"+J^^J4HV5W+-L[6G8.RL)<6'2E*Y!75 !48&@#
MS4L@2ZH$RXU285Y*)#7#J570GGU;87O=,YTMCQJ\F3_;7UH1L\?6'7KBQGF-
M#SKYY+LIP]<TI7ZJ=,^YG:T=N]F@B9WY_8AW>W]_W'NW.PR:)/8D7NVI\(ZD
MS9.S.^E>,!7XSW>2R>B&MM$P>YKE[HONW/9L<;O:S)NRQ;Y]&"X/E4XE[*C;
MDG [^EG/0*+>">X21^N(X$!RXCX'[B <=R_P>#<P+?W]VP\SC"BD/"]MGW<%
M$,\1H() @(E6L"J80-RI L5PT-0.-K9D36+ZA]5BP=:>F>E6Z/%5&RJ*I]O,
M2L%N.B%BYJ8/V(Z1FVZ'FS8W?2# 46[Z\&]^G[U4\]G[-D[UU_E&L,7_*+;^
M92D_F(4VXYA#7A<U@- V@RT*LPPDP0!J)57!-.%5[K(,QHBD7A8MV:REFUG"
MF:&<6=)N:V04H?$U$TMNSS44(K+S@G*1:62!F=?;M65^V"^KT4$G668N8O7+
MSNG9P./5(]^H__-H1O[%]HG];D;I^H5"L]P8%ZQQ:  $*PFHRG,@:\0X-?L2
M%EZ-F<]22KP@]W2SAG!F*0?V73V/EN,)- 8&GL?.,/']CYJ71(MUOCQ+9]I#
MY25QCTZ2%U\(6\"_KM9J_F/YOMN9?_E#W-E6+E^-:FAZ&2X:[PZ<H:*23, 2
MZ%P4 #&: \[K$@A1UX4@ @FWO@*>=!,O[HZ+K,M\R53'1F9NHRICV[Y#E5J>
M;WYT%:QNZSX!6'Y:H,>IYR#K6<@L#S?9@(MX*L%3ZD@*PI7JI.K"$XKGRL/W
M]>"&3">3S7[.-^8'PX.U__S9J*PORSYZ]9W2AK76.O2=_3&KE*XP-1=7G6L!
M$+9YS:700$/;J:DL!5=>E12O9RFQ AK$?"W89C/73]9FN[U3F1P&=.^CP#*V
MR>[40@+#)3#L>M:BBC!'6BAN9H<!110"2!6V])<NS4310@A1$&GH!37/FF*J
MKBX']D\X8VZ;S+1KQ6__&4ES;MG+#"-9,S5O+(M_LBW.>BYO,M[PV7M.#*=1
M6W%%0BU>2ZYK&9JZ-5<D $^TZ(HU<D ,8-L&XYLR1\O&G_'%J(CUEV4?# ]5
M6>J<4X"U;4%8, U8755 -O9:*AA1PJW;@@,UGX49U&RA(=>UU,[FR\UV_>C1
MI<8%KW$=%AD#/^74]:;9$\Y:. SIB"6B/$0<C6.[,,1T(6QNLAQ$KSF^XF]1
M?FN^5FF_V ]J(];SAR:6TAQT*I%K!@1NLF8K"JC@&%2Z5IQ** NW"@3G"*2.
M".E)9@.:[B;DDY!<-A]?*ZC?TO.3T<MF/"9(D+WXY("3V8K'Q!G:B4>?"[L7
M?MH7:_JB/?(6.Y/U3&!<556) ,0U-^N0U8!BI8#6-:0"5ZK23EZ=2/Q,Y  :
ME+AJK@_-"==>'[K>3Y5G[Z>K9X&67!:T!$4)&4 "5H"1 H$*,RG+HJY87OGD
M5TTY"_ZY6*=FH;OOS<T5A#V;DVFGPNT^-R' WI<YSR3V@2@WG0TR8E>F2$!%
MNK]=R\VDE[=(T#V_N<4:-M"GV?7>_*+[2MF?C<+=?%JQY>;M4NZJO^SK0^[[
M:/(BKXDR"K*L*@(0HM"<&5$!N."$5Y)6%#K5P([ 2VJ_Z*!#J4\%^.B0.[I.
MIP'2T[EZ D,;I[NU>JYAK:EALR]5M><N:=_3"&#%<M=>P<FT#MWK(3MR^488
M,K#'*GMJR]XN95<=T#?T?F2$=,NI)]HLFIYLDL!8!_%B]7$<H31M&\?+(A]U
M<71XY<JH[D8)SG0I6"DK#@J&;:W(N@)<:0)*60JLH*X+!KUVW8/A4V^DN\#N
M5J7[QA0=0N&X&P8+Z+G!.<L6'IM^($+L*/3OTS=[.2W8V<CRPZ<"/?=**W-R
MECO'1U<?ZIU:*CW?SG"50UB7&F (!4#6%L,+:4ZUL*P5EB6NB5.M D=ZB1=<
M3[U/B]NR/[(W-F'NIUH_>5I5+B'GZ'J-AX?G5;R'8N\:[6O#96\ZZA$3=AWE
MC.4)O4!M6C>GF^A'/DS'UX(C=EROUKL,K;ZX(LPEU56!0-GT?4,E [0NN=U]
M<5&4A!;VINMN#[R"E\2VP'TNI6KI>98<N@9E1_TQ#7:IS7Q[H*/5IXR(4+SX
MC&!.I@[,N!:R$Q$95P\9$(IQNUX)I>3F5R/C^]5BH41#0?_7:B$Y$[\-NUE"
M7!<<U4:-X1(@P@K 5,T PY)5@M$2NMTD/.DF/O'TC+1Q:W<=^4%#R\ZGA!U/
M/[ZHCFNQA%AYV@]ZF"P3V9Z+[(O.>CZ\39R^6'G4<TJ#65A9IUC8^<7#^",P
M&AOC,=QT<3+^,A[$S 2\'J!B][;*?1MNMOBJ?BJCU3\N]6I]WWQ/WP]M]P+7
MM<Q)"0BV+4-SD@.NS"&2RARB2I2Y5DXA-E?P,*&;9,A6UO&5#1CS4"B!>#LH
MXO0H!OI(OEP&T,<I$@U3#X6='MLPY6WH/2[8NHE@7ZPVMO*SC6RP0>WFVOG
MED^VW,Q#6[0C^S&<A74W"_/!+' ; RKGYN%'\T3CNEC/U>;?(BG]ZU <W0 "
MAYYN,[A.]H.-X<JA C:)?LOYKM;W,ZE+S1DAP!RTFQ:&'# )*\!A(7.9(X)%
MX:SZAR.G/DN;W]_9^I7LQUJUMNW=@=H,=Y^]F2^S)\76(]5Z+T#CH*5#!?;3
MO3V5F\S2"17'0T&&BA6F]AS%\]-.IT08U3D'+TRG24[Q>: ?3CZ0MH71I]7R
MAR7W0?%M'^S&I%::F1MYH4C=Z@DB>04$8826DF(NW8^(U_&26+/T,8</JW6S
MC9H3X\(P 1JM(@T;:1KHG +=00--!V5JLZ-E#UC^,LO@Y0##Z&BGZ5-T)>I3
M-2CR13]9:Z(1O&+U)#I%XE4V(QK!(K0+T=B08=ZKOZGYC[NMDF]_&A(_U.='
MFP3T17^[8^8#_?*XW6S9TK*S"UVJ"DF81A@(+LR1$T$)*"TT8*A ,*_KG'*G
MQD2A#"3>/WIV,M;R8^]N]V8?V33\9*L]0Y[E7+V!=O-:I83/;\_8(=>QDK6\
MV!VXY28;L'-C5-GBT3Z=(K(L%)1(WBEO\I.ZI$+!>>Z'"AXGL!9V%[[9Q</U
MX7!*#N+<^[- 65<5QY4&-54Y0"7, :]D :@B7 O;00UKK[+6[K03JZ==D/A#
MRTH3I<E:9@[R;%I?%,P]0W%\4*:*%Y6-%110FTL%*90!6)4 UIBPJL;F9^:6
M?9T8YZ!L[.=(I\.1*"*)$N;S%*P"2.$",,8Y@&9>*1=%J97T"0))];7Z!WVX
M?JWIL'7;1!,AYK=_[L"Z'8#5\9$X>2M _ECEPSTH3UL)W!^2HZ+> 4-<D77_
MZX+]F-&Z@E#P"BA[)D<**:-+*@&D+F%9,5C*TFGG.QHY];ZVRT&WQ (2[!OI
MQU?[53)YKF4W<<)RZ8>L7Y=$WXPT??;\4("3:?,'#P1VM[15+=Z;N]N\+:O?
M!O9CP@6I9 T(1F:KI0@!1A4&I-($:2IRE7OU.SE))?%2:>NB#(B&I3R<!LAM
MO[Q:;+_5Y"^Q?R?',8EB]7(\26/:;HYC8A[U<QQ].+",A=ILE-K%)7ZR[=,V
M^S" "E984Y8#)9L<)&*N%)5@@- RY[(4N=1.?@HW<JD7ZK[':D,W6]L+,UAI
M\&@]GX:S;9MEU_PY_#Q\ 5.W)1T/*;^UW=(=ABVWI,T23Y&4ZR9FK"H$X\2F
M+3+@)/A1#0&WM](Z--^OEINY[/[Q7VHA/RY_V1CA?^]-3K;\JKA3FYF4 FEE
M-$=9E@5 **\!Y5(!2&M>0,@P0TG<G,X<)M8X>XOKMB/8A"")(7MMS97Y,E,-
MAVD<=.Y3%M=)FF0B4KM.#YC.+->VEVO+]TUO1?^BLY[WEYZR-)[6)%,WE?\U
MVA0F<\QZPQO+7>M.^%4Z<;UQ"W7M^A-*GZYH+P"V'UUKI!J8K68BKY0YC4-0
M<VAVVKRT*3ZH!JK(&9,E1%1[>8&C<#7)Q7L?311\8(\S!6[G^LF!3;U;MK-P
M8 _?\_PRN8X7<7N!K,?S/+W:_,>+,%Z3"7EY\$"W='.-_ZRV,\YKJ066 #.F
M *HU 9P@HQP%KJF4>2X%\W+C]2,G=M+9=KBM,<+3#;>3W-')%B*/GS:QHKP=
M%\7?-_:<[5B>K]VXT_JUGHMSY+4Z>B#0 ']@-'@6+-*LT<?EUC9/N55F,FUM
M5%GCO"PID)@P@"JH !4%!#PO!*R(S#'WJC_DR\#4@66R8Z%ID^1IN_?%UM&L
MGQ Q3XO_H37P)CL*+NO9Z7HG=1Q%= @$8A'+5^!+?EHW0B X1QZ&T'&NK4G:
M!*F],S3E^]6]+8W0'!*^;5?BMR]-M>Y-W_']69YB#2N%-"?FRH-L9)F&@$+;
MD+&L)4:PH!1[E=&^GJ7$:FN8>MNP"+CE,1LR>9,U;&8=GS=9SVEH_=+@Z7'3
M<]."[J?Y6HP;EFP@4!-#\':]MIW&[,\W'<A[C">J87HM4M%+F08S]$(53:\%
M\'QATZM'#JQONK;MN;9/M^;[W;Y=2MM7Y.'^L"-K7N"<TZH 1$ESIM-%$]J(
M <F98JKDHJB\_+D.-!/KPR;3YM/\IUF>W\WOYW;I-4?FP&ZV+BBZ:;7(V'BZ
M<<-A\:\;ZRYHK/JQ#A2GK2/K#L%1/5F/5].F%!F5-1<S6=>\EHP 130W*L)&
M/ZNB CE1!>*T('7AU1/7BWIB9='0:'+9V_0ASV!\/R#=M$0R>/STA6>R4,/-
M]/E!!R!,G!S4TGZ5F4$'L(2F!1T.<NV%[I?[A\7J2:EO:OUS+M3I(]';1?-I
M-)6;OBJQ^K&<_T/)VZ8[]?O5IH^!1% 264D.&"8:(%C6@ G( &2*5(K6C.=>
M_7.3<)GZVC>XZIV\AG05!643P/:>/<RW;&'Y-!>3^\8N$U:'.\F$^MX*7VB:
M(E\4KYZA*VZ+"1",?H&,R>,+W2D3P'S^FIF"6)C:_[C\:;[PU?KI;^OYUIQ9
M?U_.JH+G55DPP MBVTR*"G M)2B(%)"6)<MKK\#^8Q*)%>[[IIF\C<N;]Z2S
MWRUM( UQ3]?<"8!4A3!1# /!D-G4,*QL!1AH=C940&Z[/>C<+UGS.HB"<C(_
MGH#&%E5;FGOF6EGUUIC"?K+%HZ='Y01B;KO&=2CXJ?R]^'_;B1]/>Y^7))+J
M/4%@4KUY7L#G2F_DR3"-957?%_WGU4K:/BZ=!MU\6RWDC.8Y%[F"0)=E:4Z;
ME +*:05@D?__U5U9C]LX$GZ?7Z&WW06: QVD2.[# )E,!AM@CJ S@\4B#P;/
MC'<=.VN[,^E_OZ0.'VU9)BE2W?N03KLML:H^J8K%8K%*UTIBFOMM>UXGE=J"
M&<)V_=85,_33OQ& W/0PCMA^^MA+_&Z[D0]BWSA:'>7,4HZGF[>EBZ2C(X1F
MU=7; C_568<[(B1,ON[:E[8^3A>?I9IP67,!("YRH\*H!DPK#CA"9O$(&>7,
MJ0JC,\7$FGR>E)>=<Q 8Y[Z-HIN>1\7&3]TGPC(M!7%,U!3IA8/TGB]U<$S\
MT;3 T1O##,*]6K&]6=2P[?[1)F7OF#AYC8D2E2QLWA\M)8 E-W; 5LJJL+$0
MN%8,"Z\MKU%JB0U!1SMKB&<GU .-P#AR;@8@&AY^RC\!"F_%=Q(QDM*/TYI5
MX9W$?JKL;C<%AI?51QM*NU=-,5'OTFS7;D\8$VPI9@>22:JKW9(K5J3N&IEY
M@VTWA+V(E]VZ/OFIG7=;]9DMI7&"FZ3W-I^WKX?$)1)%#2E@J#*S$RL*P"H$
M@4)FH2ES#"D,=U7#^4H\CW6DT[<>&\4^P,&=!]$I;K#+D9T>?KL^;H_OM*PF
MJ&05&;WY#^Z,<O52C^ZX0#GA\([3\%,"<UV_A@7E5.1U@0$CB!CKJ!6@NBR
M1DH13!E4U,MW/QO]Y8??>AA\(FX!PH4%V>YOR!484WO"?]0P6C_V,T3.GH@U
M'"Q[>E%HWV.^_^'0\\;31QZ^.>'D9>AE1X))_.-QF:+UY1TD,G,[WC%!+[OP
MCE[M]_+MFMX[:LVVR\WOZ]UG)99ZJ6072=!$UUQ(!4HA%(!U98]BYC7(I:X+
M@8AF1+K8\5$JJ3-P.KJ>H99Q8,:5,IJXGJM69TF=5=%)DC%-- .<:.&N*X+1
M:.#XV+,HH)-XO?ZY71RE*/=O6R95O]S1FFF:UPAHUFQL,@5(":TZ%KK@)4(U
M=%)"!UJ)5;$A9>L6QRL(?8:4VU0927X_W7Q:E/@N:^BFKT$\)%Z:FL-GE)ZS
MQO"0R#=J"@_>$ACL',[G.F84?O]XO*1+.'SU)]O*GY9K]7:O/NT6G$N>\]),
MMM!.NY6L 8.$ EYJ2JL*84V]RNY/9RGU''WE0.1I(J9MY#B836L9S3Y85K.&
M5]]4V>G/RS&,/>M3\'0=3I)@;S^ [T,?@'^(/!IFL8+ITQF:-^P>#<"+ 'V\
MD4-#3K:A4',\LST4\7:W>U!R0?*JK&C!0*VE[>5)$3"?&"!<TJH@D-;$RWI>
MH9,\#'72+NFN;YNT;$B'GX2ZAIEKI&HR$KXQJP:$AN)==Z#I+FNIQ@Q@C8H5
M+90U3&7FH-:HJ)?AK?'+0WJS7]B$H\7H3EJ\5_O]2LFWZ]=L]\="UKRFF!>@
M(+8K.Y48L$)+0'-&,&)$F1_N7=D]J:?V>RRRG3\C3J?=7<N$36,7A@V?ON&^
M^(ZK?G+4POV4L<,ZQEAT"+Y=9Z\3(^C3<STADF$U6N,CZMD_/1"1\<[IOH/.
MV#,]4-[S;NFA@R0H07:O;/RK_](VU2P6A**244:-]V7;#U!9 $91!5B.$%25
M@*5?=1]?!I*G\W44NXX#09W6@\%U\]520N9GLV_7(#OBV5P1J0'Z5"3FJ$ V
M1/[E5" ; <>K MG8. $NY#NUU9OM)V8$;!RHW]?+_>YG9<_'+YB&.=08 EJQ
M D!1"4!JFZ&E(2>D+&H$H;.W.$(H=:+5^]__XE.??@P2!P<ODJ!^=N&$:%?W
MK"&;?6@).X;Q;HKOX9U%@B',$;L"1R0WRT&T48]J[/[YG"<'*<[\))?KD^>1
M]EL-OVSVRAZI^FG#UKM[)=3RB]UZL(5_M>!:*8V!0,9@0<4EX A7H%)EI1 O
MM)!UHFS2V]PE-G6'G;'M@6BRM%*'1^'F73T;P'XFUC_%M.?6%H,W_#:II@W'
MV9%E\YUZGE13=RSG3SAUX.VEIIVZPSHA^=2#2(!/^-K0LVE0#VSU*U\M/S8D
M=R>U_TBAE"AE:=S!@AC'$") :T: 1K4L*39\:*== 2=JR?<&#N2S$_J99< S
MS<D-/ <7,B8DOIL$4]#P<Z-<I1SUI6X.,I]#Y2K/F5?E?%-RU\J>4O]SN5H=
M&U(L<(5@*3$!6-C4<UXKP&@N@-!&[TM1Y"7'B5RI2VX2VX&>8#)_:0#?Z/[1
M--12^T,]=\_>'.<Z3/.[.@.\O%37YCIL$UR9D4%#4QFVGS>V?849L3OXV$4O
MB-24Y$0 G$,.8$UKP+6N "H9LZG8E21>YPRO4DKNLG1T??,5K@'C9H>BB.NY
M1?GT[/"=73J9-V6YLH;&9K[8/H<=7]:L[+H[;@:^ C(;;H@?+;?A&IV9LQMN
MB'N9WW#KAI".O(KOWZYW^VT3!'R]^:+6S(R[7"\_/7RRNW'WZK\/RVVS6;<0
M AFW)*] 7E.CWQC5P'RL 2Z%9$*(6BFGG3)ORHGUO2/:9"]DVR-9GYZK/C@Z
MK%!2H>/I@MB#4T<VK"EH&;G+>LPL+]E]>LQ\^L\FPBZPKVQ$##T;Q0;@,-X
MUF? &1N[!LAYWK U9(! Y\F,9O_9 OQ?V,H,N+M7AO)2[)6T7[Q:R_,_G%SI
MX?7M%E!@6<A<@3QG.8!0,D!+7 %AJY-1C0G$?IFE<W&>V-C;[O9_;TV]C1<W
MOZ@CIYE]N=HV;?T*:W-@[2Y3YI:-SCXWM6UM&D6_)ML>1&^&]$UUG>VU<'1%
M7^+#]HRT&:;N6M-ZY,VZMX?GU%YA7X(G?SR[87BQ'='MG1OJ6&[T;'S/ZY;/
M_3@NW/S9&0B;R6SS'YL=8R?/G]G^8=LTUC4+R3;);_>K?K<UYG'YF:W:E!II
M.T+\:%AAJW\IMEW4RJPF2%Z"&@HS0>5$ \K-;S744C-.=*Z]:N!.96B6/#S9
MMCNQVN0W0TR&V\WPSPFBGSUOFDU9UC++FW&>6^X>[[(S9%M6,LM+/!L="Y5(
MIG<R.[-:U%C@/364T<8-M'_';N(+5A+$!:P!D@4$$-,",%27@$O%E11$:,1]
MNH /="IWLDK^?<!_L[=DJR,]3ZMT H*C@0D3S=-6.,CC;P0N.8^ESR<CSZN:
MER)=:-G )?Y56]K3ZN+QU=?E;H%JI&%>4UL4PF;=*PX8E!A4LBYA+032I7(M
MU'(Z<.I=@8Y4]L$2\ZC,<B;\N)9,$<ES>>0HC5?UE2'6)Q1<.1MNMAHK0T*<
MEE49_#XD"^CATZ?E>O=/X\O;S1?CK7>[14@)*'..0"DK9F:3D@.BF02\R)$H
M"9-8.;4B&Z627%D:LEE/U^Y>^R3Y7,/&(70>0V)?7;H4-N(&F9-4XTD\UVZ>
M,7GG!O_G23NW+@Y0MZ:*I%TJ[Q^/L=Y%P5 !M3">&^8E@*A2@)K)"$#CN9DU
M:(DQ%,ZZ-D@BL:*UI5550S1;'JCZG,<81L9!TR;+ZZ=FK:@MO9,=E<F2>FPM
M398X; _)+&K,MTUXVC#0MKK*;(N#CVLE;2^LKM1">R;%1C3M9>Q3FZO.A-C:
M;]E6V;QUJS'FPR[;7'EUOLU>[?JAS"WJJ]J*9=]3T [\8)=2JT<;]NY*/=CK
M.AZ:^+F]:K]5;/>P?;2K<OO95MY@:[->/XJP;!+INV8-K23-@)EH.Q=^&\EX
MCCZV4<LY?.=\9G.4\S.;.7YEV!JWJ\';G=+M*Y=)7@FB2P8TLL?6"$. $BD
MKHA9[D)6([^:)8-4$IO-:<7!AW%Q6P!/EM;/:/:"'D[&1Z_A-BI0M%[L0S1F
M[KX^(N9EO_6QBP,/MEL%/UF.]Z]=P;DL-3<KA1)!LZ9&&C!2UZ!4C.2HJF6!
M_<ZO#].9Q8_I,A3# U+70'+3S0BBA[@T)Q03Z.<-H6*='+]"9=X#XN.B7IP#
MOW'YM%5&=X9(R1\W6]M;<K=7JC_GFXN*:JP0$*3F9@JMS10J& .J*LTDBLN2
M>IS\=J,YXSH$L)Z-IJ]MPT28ESZ&H=\")1(R$U8L!PXRO=EF!QYB!PK\9'9U
M?L>&>A9OV$&V:^ZQRZTAQ<(.3;/-N,HLS?I X9NOHNGS?,_VJNE6M6I6?TU3
M[-_4U_WW1K[_+.H*"RX@ Q53-8 4"\!*+4!>04)RII6 W+UTV"1>$IN*GKEF
MN[9E+SN$HWL&,\MA=L*B3U&L:4_"P;#,AZ^?P3E ^ZL/M-F'AK_,,I@U'/H<
MR)R(MD]!LME0#RQ/%H1^K-ID4< 9KU0VC<2,=<NB8'%>Q2S.D,E/F;XU+^WZ
MX](0;SLFG9R&+/(",UQJD#-NBPS5%: V]0J5J*X4LGV0G(I31N4J\5QS)&SC
MI<HU+AX7>+?%Y^QP^DTM_L=13[#O6[\]\[G4V[C-?SYUA*>7>D[U-HP3SJLZ
M#![8Z\#,YLT1CI\.M? +7*A"U!BHVIZ1P 4$Q/C9H& *,T9DE1>55^^""Q*I
M7>F>X)2> I>XN!FL:=)Z.K9^@OK7[K\J2ZQ:_)<$YJVM?U7 BUKYUZ\,2/S:
MK'>;U5*VJFT':[*@5*%Q!<L<:*KMX22A $&L!!K2"K&<L=*]5]<PB=3Y+:=$
MV[?1/R]L&)MQY8LCL9_R!0CKES8V*L^4!++A@>=+)1L5["RI;/S*&98-7XS&
M;[:/_8:)P$PQBG-0*%4!B @&#.<,%#@G%<>UP"I5E;^GO"1?(K3DO/>:IL";
M8$D0#EKZA4#'V_/V?KX&T7/X_$\X>;F>_C!DD_S[*T-.;JS3[0M5E"B.F0 U
M4L(6SU. $BH IS5"J%08TWSQ16WY)J"ICO^.T2DECQFW;:AC208WS>GPX'6N
M!3>67$-1 %@R AC2"C".*64\K_+*ZYS=)#3"FPN]CX&%F]F=)*&O:W44+DE-
MG2N2Q.\3]#PU=*Z(-](;:/I&W[W:*7.'/8C[@_JB5IO/)ZTL7LE_/^SV]@\_
M;K;WFX>U-80+B4C)"\J-#FI;.8<8]<L+6R.KJBM5*81+)QT,I)]80WN&F@11
M>63)8Q,I %.';;JT2/EI^AE()]P<,_..##49 CU+:5'TV'Y+BV9H9G1L5/UV
MW<(Q&=UI"QAVOMVU<)G/=M0F#!-@M/^A5C;?XSU;J3-GU5(?+(_PSBS'Q6/[
M\[A;K7-&RJ(H@8*0  C-;\1XE:! .:ZU+*60[H8\#D^)C;ME$AC- 88[90OC
MM(N_CY;1UN /U\KQ,%N1GHW#A# _XGZ31 .V81!8#K/SE7;VRIJXP27V[BYK
M6<P^=/^'I7)$>A ><\K\#R1LGIGZ8")--W'A&IV"(I&:;UJ*B\W95!5YZ) Z
MG>X!%AM*7LKN@^7\[?K-SL#XYP)KI52)*9!,2 "K&@(.*P$X*Y2FC&,DW-L*
MQ.!HADV: ]WL#T/8]BA5#6F?.I4QL'>8G.9&-'78]QQ^RZ5MQ_GF6>#W*1\Z
M\V,(+"LZS^/PK#@:$;KQ2J0Q",U8H30B+N>52V,._ P53=\U=30-X_:LL/I!
MM?\?!#G-K7RCM1+[A2RJDJK*SF&Y68"5-HD1FZ689A7$FI@E&"$^I9;F9=]K
MPO.OYO2+VF>RXZ)OQSU8Y73&ZJ3^C]@Q2/]B'YSG#D"D.J6M2%DO4_;77JJ_
MG4X.YUGHK6QM[.PEESD-?EPOH=:I/_/_/P5/@Q],U*JGX5Q<F_).W_N?S&_?
M?=/_Q?S@9O#OOOD?4$L#!!0    ( "J*05L!VF+\XI(  )G(!@ 5    =W!R
M="TR,#(U,#8S,%]P<F4N>&UL[+U9DUM)CB[XWK\BI^9U4.G[TM;=UY129G;.
M5:5DDJKK]A/-%[C$*8I4D0REU+]^X&0LC @R@HL?GA-2E964L5#G8/D<#L#A
MP+_]KR\?)S]\QOEB/)O^^Y_XG]F??L!IFN7Q]/V__^FO[WX!]Z?_]1__\B__
M]G\!_)^?WKS\X<4L77S$Z?*'YW,,2\P__#%>?OAA^0%_^-ML_O?QY_##ZTE8
MEMG\(\!_K/[9\]FGK_/Q^P_+'P03^NIC5[^=_VO(PENC/13A#:@0(T29'*@B
MA,A1EL#2__/^7W7,4C'+H%BO0#&1(2CC0"K41H?"Z._50R?CZ=__M?X5PP)_
M(/:FB]6W__ZG#\OEIW_]\<<__OCCSU_B?/+GV?S]CX(Q^>/5I_]T^?$O]S[_
MAUQ]FGOO?US]]OJCB_&V#])C^8__YR\OWZ8/^#' >+I8AFFJ+UB,_W6Q^N'+
M60K+E=0?I>N'G9^HW\'5QZ#^"+@ R?_\99'_]!__\L,/:W',9Q-\@^6'^M^_
MOOGM-L6X6'Z:S9=_3K.//]8/_/A\1H!X'=Y7<E?_?/GU$_[[GQ;CCY\FUS_[
M,,?R[W_ZX]-\"56OS$A67_I_W_SC'V_>_VF."P+-BM^7](/+9]2W'4<+?EGB
M-..:QZNW3&;IUH<F5<*S^=6_G(2(D]5/1QG'H]63G\7%<A[2<N0R\Q8EAVP4
MP<NZ"$[H!"DQ%S5WKKA\F_5*]H+H7BED@>G/[V>??Z0'_UC%4;]8R64EDWNO
M6\OF.+JO5N [^NR(,R5]T8'(+K1XBHT0HE-@?4+,7F7OY$ED;[[M-M6;.GTV
M3S_,YAGG9$*N7A?FZ9Y^;X/W\A,_?@IS>A"D#^/)M8S+?/:QA:Z6LP:26ZN%
MR/W3#\1UP?D<\\NU5G8RM^)L28855Y\\1>,_3Y?CY=<W^'Y<!3!=_AX^XDBY
M5) )"Y@3@O*T\KTO K+,J Q'9I@Z2?/;WKH7 L1P$7"R)'M&PC.";ZX0?H&+
M-!]_JI(?>5VT"X9!]K0%JL L.*R[@#.1)V<QE7(2$K:]=2\DR.$BX61)#L(F
M/"<&YF'R&VV%7_XW?AUIS4(H(0)/D3RH;#(Q$#WHQ)..7-NL10.C<.>U>V%!
M#1<+I\NR9S!<;6RO<3Z>Y9^G^06YYB.)5A.&/0DA2% ZT%>Y%/*N,_G+@GOK
M=!/?X-9K]P*#'BX83I?E4/:(7R;A_2@Q8Z+('")Z"RH9"SYZ <A9+$Y2X)6P
MS>907[>7\LUPE7^\['I6^O.+>970+^-%"I/_QC"_ FY*CB6MR*])K(!RSD"P
MEH-67!$-2AM^FINXZ\U[0<$.%PI-)#J0?>&&B5_H)XN1<YX1L#6X$ G8GDR:
M%\B!_.#"0RF2F38[PYT7[X4)-UQ,M)#GH""QWN363&@>&;/HH$A+SJ_V$:(2
M#)!B85=445J$AJ#8>/5>L/!/!1;'RK09,/[MQZTYM^.S@>013Q>8Z8O%;#+.
M->W[VY3>.O[X4YC4M.;;#XC+Q<4T7.0Q_?*XM.'!;VF47SR-NQ,3D1<+>!_"
MI]%;HATKAEZ57\93>NN8@#1;C%>+X J?FFD*3@T'KJ(!Q2A0]<8[<(F0I0K/
M7CT4W96PB"OH7+YTO4QQLEQ<_>1FO1Y"U['FZ.H=SQ8+DN\UEUPH=,62KV5]
M "6YAU#3,<J(J P/.<>'-J=CN+Q-03]ISLZ0<&6I&HB[Q[WK-O67SMDU$Y("
MLA+1@.<EDD]&] =N%&0F;<XB.I59)YBY0TB_T#E%LUM!<HJ8!X"5YV'QH?[Y
M^1\7X\]A0IPLWM &,!\G,N/U%\^F^?8/-CXYLH(V?28,!?J>0GZ9,_AL/+#H
M8Q"*R\138TR=1/ 0L'<28&9]:6\ 4'V6TNQBQ6%"XB%.\'=<7DISQ#D7Y$0F
M0!2T?+&0H8\R D8MN;7%,6E:6[<'Z.GG$*@[H#63_0!P]-OT,U$]FW\E%D8A
M<(V)HAC#:E@JG(804P;K669"<.OE0V?:Q^!F\_W]'!%UAY.C93L 7+R>XZ<P
MSC]_^52#G2MP.YVM+UI!M#7@=3%!K+YD-H4[PX)+]J'J@6, LI60?@Z0ND/*
MZ=(> &368GE57HP7GV:+,/EU/KOX]-LT32YJ<1C]-,VFR_'T O.K3SA?:>N*
M4XQ1FV092.$15 @(WIL *$IR/NGBA>W$'3^&VGX.K#K<SLZCM\$@](IXHQ(W
MB!:TR:J6<0B(PF;(L;AB3':\M-[M;A'0S]E7US@Z1KK'0V.V#),FT'@YF[Y_
MA_./=<]>+#^N0@*-CF)>133S:G]#8"2,($"F5(0U%"K[U@#90L80O.<F*8)3
M13P  _)Z/B,3N/SZ>A)HT4QS#2 _54ZJAX>84G Q0,FY>G@YDFPX!\E="2)R
MI]-#957'.4>[Z1F"-]T$-\V$/@  7>Z@T_<O,2SP3:UR?U7^NL"5N$;).V,9
MRR"M,61]@P:O1(#DLE=D,K4/K3-(#Q(T!#>["83:B7T(&%I^P/E:.+_/INER
MO_6:A:@BV4_F2#Q6,XB>1W"8"WH;M=:M-ZNMA S!.VZ#F9/%/ "L'.#3WV,U
M)L,5RPBLYBD4JP7OEGQ]RS,3*274.C9&U GD#L&;;H*[<ZEL .A<TS\2M&9,
MEAJ8U['NX04\*PR<5,K'S%%V%/WW4W+6V>G;08(<0LPU#G$\&2_'N""W[NUR
MEO[^838AH2^JB[?\>G-Z;2ED=,E7,!<2B$:RMXY!01V=CZZD!ZO4CPK$]J2M
MW^BL\[/_3E0T ,NSP=?=%$A@*(T.$9@ILJ9 :$6&2"LI"X<>H_6N=6G ;FKZ
M/:/M1ON[(7:**@8 JJMSP=?A:ST4))'13^:T8=]G<91<,MHD#846)_F1QA-7
M]"U32I*+F14%)!T=T>Y!WF!@=Q(B=AS;ME;/ )!W.[Z]XN?K%3=*%RE9,N0-
MD'.@2G 0"FT#T:F$@3'E4NL*N8<IZG?7[ A?#94P $A=96M?8*Q)M^?AT[CZ
M?96U5W$R?K_2UO5Z06N=]98#RIAHO3 .064/,;MH#'%M3&L7_B "^TV&=@2X
M[E0T /R]GL_R15K^+<SKO>NO*U,=)L\G8;$8ES'F*[9LEL$:J4 I3F$3)Z\C
MRGH9E\L<F)$A.=\8>7N2UF_VM"/,=:&6 :!M0UI''81GXS%YM,"D) <XU@1A
MRAI,#$E&BM^]:GY4>!K)_>9IN[*(9U3CL%![Q8$V!7/1$K(OM.ZR1 @9%22'
MT03/D#_8EJ9-]-IO+K9[;!TC[ 'DVW8XJ!OYXX!2\V("B)3K555!\E&:0Q%&
M*&+()?70Y=^&@<*!B?USQ K=I4#:*F8(AFDOSW2$7DAN@X9 _@ H<@G ^Q"
M,ZW04:0M4U<%-@]3-IAPH<.T6WL5#0!XJT/;#?EM+"$E$],^1C"I%J05ER"@
M$Q2$!RFEX]G8UB'J;FH&$QMT:-3:J&( H#K6J]S@6$;)*=@60.M%@)(V0RSD
M+EB2J0W))U?X0.*#H91RG/OPX1RJ'1:81\GXDEG*P+5PH(30$*/+H)%[<I6Y
MP=P\:W?S^L%$"6>!UT'"'D"P<%\BUROB]6R^TM)R.1_'BV4]3'DWJRN"E@E1
M04]\OVJ(@(N;R"M)&00G%R+;0%(,(@.)(X+47EJ>>2JV]7E76P[ZK14Y"UI[
M5/D #.,=019$K0P&8*FF@LC=!?)8/ BG?9(H;?&M[] >45G285>)_K P:Z:8
M <#J^>SCQ]ET)<[_"I,+'$7K,01&(10R#RK:!-$0$QF=063%9]7:%;Q+0[_0
M.D6?=Z_\GR+<'L%1VQFM Z2KM47"6+6$&F7A2\BT/F+B]0:6J1<:9(1,KJ0L
MAE8+WKD#<+\WTN[']UVNUKM1:23Y 1B69SFOZOS"Y'48Y]^FEQF<C24QDCX+
MJ3.#9)&#XM%1:.(#1.E)8H)I+5M?UWZ<JGYS:P. 8$<*'  DW^ RC*>8?P[S
M*4EK\2REBX\7D]HA[066<1J3P# Y[X6 PGD&I:(D@=4+-S$$G00Z#*TO%3Q.
M5;_9N %!LK$"!P#)#0Y65I]6%Y'R :>+\6<D.<\^XLO98O$[+E^5=^'+*'/:
M XA%<B!6!RVZMFQVOO;H5(:B=XGM+X4?1F*_6;D!@;5+U0X N?<E/2*ZG3>:
MEEVJ5T0\?>7)/08,N6BG,&O6^G[H?2KZ3=L-"'\G*F@ .;['LDJCY*/E%(.!
M*X77D0843J4@(43/4V!.ZM0Z"?(83?VTA.XK:WRZ6@8 L^K1CM<-'^I)\^HP
MY3U.4\V*ARA3"5* S*K*B1R+B-% PI)B25($T3I$>8"<?AI+GQ5<K93Q[72?
M?KU2S@=<CE.8W&:OJU;4MU_94U_J!_@^9Y/J+'CT109@RM+&J9'<,GHUU"E:
M6F(H-K?>8\[1I'HCC'_[@22]^&VQN, \RHPBI<C<Y<VB(")$82)XJ9S3W)J4
M7 <&;PLI?1\P-,;& [GAHQ4P@##@'ANO+I9U-FCU>$=*9RDE+Z!9/5-.+(!3
M2@ O0@NI*$YO?HOP(7KZSBZ?&U''JN(I[IW7TEW,RG49S")4%V)KV-W9<(?C
M">E\GVTDHT:[[_H]US1=+X%8DW0N%7!9UG..2%_Q1*;0<\,TV<*06E?]["#E
M]'SS9YQ>X"]D"JHC6Q_YM_'RP_.+Q9)>-__YRV5FH+;'H/_GF@5*(465M0/N
M@J_-GABX6KWOLY+%8,XEM.;^"#+[W9M;(.=^:KE;70UBJU[0WO/K;)97\1O.
M/X\3+MY2"#>R41#Y.9"_H31%5K* KP&<H_TH):%X<*V//793T^\VW06X&DE^
M !CZ=4[[PNOYK(R7(^L<U\K7YIB:U3)I1IXJUV CQ>F6!2;R0P.VC@'-QNO[
M/:?M B7'RG80*;0*\$L;>C-_+$F??,BP*J97*FIPVE7[Z U''IW#UGT=MA+2
M[_EI=P;E%'D/P):\(3T0 77NR0OB9#);=4V];#(_8JP"/DC0+E,DY$5-(@MB
M1AJ5G2H=Y/8?)*A?EZ>!PN\Y/*VD/P H_8I3"F<FM6=._CB>CJM\EA3+7+$3
M9+8.$2&$VK).. M!J@B!A2!\[3A16GO5CY#4KY/3'DXM-3  0+W%U8$LL?.7
M,/\[UD.(ZZ61$WH;#!0CR>N7D3@1B4-T];C#I]S>,.VFIE\OJ#V,&LE]  CZ
M93;'\?O+U@WIZ[MYF"Y(.J297\-X6M,K/V&AS]1 $BTW04H%3&H* I#5WDM6
MDNQL$MXP$7SK!I('D->O^]0>8UUIYG#0^37HIOB^9NG:=%1&>G<:K]7SL9:<
M_,_ZZW4[.5S=#L3EJ!06,*<(%&52\!E-IM6$ 8IBOOA@%&M^SK,G:?T6D+6'
M6Q<:&8!]JX*JV8Q+\UROXNN$3HEZ9F7J K$0ZVP6KZT/+J*S#PYA/S;:VZ2A
MW]JO]M Y2<8#2 M<-PZY.5,8>9>#R\+2#FX<L9"1J-<<I,#,A,.,K+7[M(6,
M?HU,%RF!4V4] +C<4%[3\.NBHK_@\L,L;\[D<9EII0.KXS!R[2+.P0>9P"-Y
MB"'R[&SK*M.]".O7^'0!J?;Z&,"^]0+3]<GHI<OW:EYYI+WYHG8&%(P;K$6Q
M1=213V2O?6$18B''S]+^;$/KK/8C)/5[M;L+8+74P=&0^HSS.&LVIG9=N'VY
M4=>F1:.L57)&&0H=(FW841(3@0047"E&&Z>(I>9VZAX9_=8C=V.53I/U(,*T
M*R;6 KIDY??9=':UB]>(P&%DLN0,4M5Q*01Z""8Y8(G<O,B187./>A^Z^JU"
M[A)2S;0Q@'WN]N:]+J2^(%9N"G_668[UY]Z%+[CX^0N)DO0WGH;YU]](OHOM
MUU-&*I:H/:^]8C1)&"V%JJ@4H C29).=U-BI"]:4G?U.=MC3 O0PE#^8H()8
MO%S6/^$4ZPD[BLP8=Y'\5-HWE(D*G%6IBI<L/B/IJM8)L!VD[(>_)U5-U4+H
M3\*&DJNJA8Q*@]%9DZNJ)824$+BC;<%DGM3=?AAG,(7[(>I)E5 U5L5@#-,5
M1UO;^%U?#KY]:?0-UIK?>C1&_V#Y=22$8[:DVH9!2O),,$#4T4"1+J".,6?6
M^I):,^+W@^J3JN/J1[$#,)?$U$;R41MDUI!W0,X!K[GJ0$$\*A!2"ITQ%\];
M1R^W"-@/64^J[.MX 0_ WNW3!.$USL<UNYCFM='S"US_]T9VSDB6O ?F5V&^
MXQ!BG5%D6"I)YA)\:Y_M=*KWP^'3.FLXKRH'D>)[OF[F0;RN"@8F:PWF_^]B
MG0=_F.U1T3J1B$MM&V>)W> A(GU+?HE&80WCV/K4ZR2"^ZUV/#>^[AZ[GDW5
M@T#VJS3>?K;SK)!O4*M@N S!:I? ,IOJ11=1/6M.WWKRJ[W6V#S(>92H?@LH
M>T9H6Y4-P'7<2Y[;&NBLNP2,/"TSU#I#4K7M%]<.7(BUO4U0T9,LR5/JPS/8
M37*_E9M]X_>,ZAZ Z[N%T^NV7\(K)33M#TG4X_-$+EC$8, QPT)B2K7W:1\@
MI]]:S[[W_49J&@#BKCHDDK16O0!^"HMQNA$2RXYIRP #I\BQ*(H< R;0CAND
M%143:WT=XD&"]O,VGU3M3#L%#&!W?CSY2FRN.%SQ.E)9UXO1&3++]G*6<."6
M%@NB8S$*YMN7/AQ$8L\MQMN!X^ T^?&:&AP0'TZMWF94%R%YB RL(#]!.9G!
M%2& ![+@P28,JINN$D<0VV]H<RYP=J6]P<%TQRI\,9Y<+#&O&:1EIF-1Y$\H
M+VF#88K6H2"QEIRY#D9YT^T1SAY$]ANQ]&PSC];6X.#XZ+J[Q6HN3(AZ_5=G
MY2C2*DB15HI0(BU :T3QL?1K-P^&:&?ARV LY]$:' !8MPIQE*M#$M"1M)"!
MDI[".G+(010EI53(8VX]E68K(?W>&^D.8*=+?8!![^4R&%4?08LLP>1Z#4:*
M $YG"N6CL4&8R%WS]/4.4OJ](W(^^!PC^0$ Z&\X?O^!Z'[VF8SJ>_S]XF/$
M^:MRKYOBQG"H[$/1$4RIE_N"S^ SL<NM7TV)#2ZTOKA]*(W[1;I/ZOI(IVH:
MP!:X+W]K(XU".^5XK4OW!90(!8*-"6BCQXA,">]53QC<?\OL+-72+5:.!.;A
MBALN*C=]S5L=9U,L(089('B=*GL(G@<!.=6^B49:W?SVRH$D]IMG&0(RFRCO
MJ;<+7G%_:Y+!69H#/_3:L[8"WIO_]FWW'Q@B(87C&BGB(*]1@M)>@T-K !-G
M:)27$5MO:WL1=OK<I,N7O*LGVB,G3$'G)%A51_)D5CM#(-:&WTFB01$[&#R]
M2<%@VNPWPL+],4A'RWL F^XU]6N)U!/JV;0NVV=?QHN1]6BBY)*D86A'B'EU
M*&V!%9$C4ZDDWOH>WH,$#01+1VAZ%VA.%OL ,'2'AQ>SCV$\'0D2 3JIZK4"
M!DJ)""X*6V]0<Q9$=JYT,T#\#B$#P<SIBMXZ%OP4J0\ .ALC)?Z"U64<<:6D
M=*I =+Y>LC(.R$WTX((4J3";I&X]@/(>$4.8#WZ28G</[CA"RKW6$*_F5:\E
M\A;3Q7PU'6Q5QO5JBI?,6$/+B*<"%.[6N$5)\"$C2,YL\2YR?C<0W#$R_.'W
M]'QJW@P5K44ZB!KS'<.D+]D)F9G@)(67%G5MK9#(XM8&9YH7C:@3-M^+'B2H
MYY/NY@:FG?0'L"?='0)]R072/NU+)BX*KT-S.0?BB4&61EAMD#/3?G#*-DIZ
M/H-N#IX&\AX :O:8QGS)6+&%<>;J>7F-.+$.8#,D.N.=PX1*>-WZM'!OXGH^
M?FYOF#K1R@#@=AU7O*2EL^JF,F(B))]#K%5"B>2D$\10;^\6C-P89,A\8US=
MIV(@(_ :1NC'"7@ $+E[A>&WZ?T,V)O99/++;/Y'F.>1TU'%H#T$7IOBE=K>
M0A<.Q;-8DA,BE]:-"0\D<2"A_)&(N%]RU9EZ!H"^!X=%LN2EL$R!9%X0+R9
M+!1CA.QTRB5JV[Q8^N2YG5WV1^H."(>,\#Q$*T<C[-/J>A6MI?FRT49X;SQ\
MR D#BQZDS20@K\AS=,5#JK5E&H/BMOW)SETJ>A\R=S9,G:B!82%I/23YQ<6<
M%L3Z)N!ZG5S5L^%JEBGYCRM5CJ)W@>4ZDE'Z7'O5!0@E!A#&9,%9C"JT]N6/
M(+/W47;GQ6*'.AS QKJ#Q?\*DPO<P:&),65!<N1)NEK882"8:$'D'"B*CIZY
MUL7-AU/9^Q"]OD':2H,#P.A-+Y/%N]F.Y."*TWB7TS=(HEZ,EW@YQ'0MFC>8
M9N^GJZ>LI#1"CSI9QX&'PBBRHZ\\LQ)\*LPG*646K2^U=\U3[Q,CSH;_0:%C
M *OE3M<URVJ+ 0NV9%KJ)N5Z)X)XT11,RFACCJV-]>%M[;J\*G\V'!XO]P&
MYM0.)\X;INIHG\!M[7 B+#C:1L#8(APB1R-;WRPX1T.;+N\9G V8Y]3M *#\
M8%("E31:% 6U)@&40EYY(1>=T8]Y4"'']E._3DP5=3GN8ABIHD.T<F* __.T
MS42,+6F*J(K/VJMZ78Q,ON/53Y !,$3M<O&^A#B,1%&7TR[Z3!0=HH&F..KI
M*L#SL/CPRV3VQ^(L-P"VO.VLA?^/<=N^WO_ZC3?C$74QQ?%$@,T<5"H% CH%
M.A!8A0M"BM;[QT/T-(@5ZC-?SV>?QR2YG[[^=5%%?SV<[UE:CC^O*KJV]9FX
MEDIB'@,W 70,%I0/"GR]E8M)^!C1*^U:WPIH0_E C@!/1=J64.3<:AV X[?'
MS(68D],\^#I7$FF#<*4VNU5@ @8?G0]6M3[+:37^HBL0]H&5PX=E'**X 4!Q
M(R=5QQ*1?%<G_'5D0J+OQQ.\E2UX-]M3!=?BYHPE%$H""E8=IR(AVE3 >,ZC
MS#Z)YM/ZNN:IWR/. 2R#08%F (MH<Q(Y?3W!JS'D&U/)1[EDYZ,WH*R_G#,=
MT#.@P$$%ZZ76J77MQSYT]6O3AX6D!P;,-U'K"1,R&QWU;S]E8RH*GI&D(J*O
M>;,Z^%PF*%9JIS))BC<_)SW^++0SRSIH,#90W0 LY2^S.8[?3Y]?T+NGZ>MJ
M# 1)YG)6<97J>GYB[0P=M.=)2 7"2]JA&-,0N2F0@^#)U1K6U+IUXP'D]5M;
M,FBH=J7D4P<,OVNXX:_?OFL<8ZS]1&@%$E>VU-: "F*6!JS.W)AH4&#K^^./
MD-1OE<F@X=I2F0,PL;=CU.W33!8C9:UF-@IP,=6+L"5 R,R!89H%GZ2ER+73
M_,(.POJM!ADT3MLK=C@&]<[L^9>SZ7MZ^,?5#'H7O><^YHJHVC\10RVJI>6H
M=,XQ.%2L_238G>3T6R8R<("V4>(@C.AGDO%L_O5O\_$27\S^F(YX",RG*,%F
M"N^4\PD"B88X<!3CA9B\;I^1O4M%O[4@ T??22H; .A>5"E>GBM>.LNOYE60
MSS[.+J;DB'#N'+IZIR 84)&\9A>U)1%9XM0ID9H?Z3U"4K]5(8.&8TMEGKI/
M=W2M\EITE[6K(U6,5E$A\%"-/(_$#B<CSY)RR? 47>S@T.H1JOJM,QDT1ANK
M=#CNY&EG)*.0)45YY#2S4NNHR3>AM2DCE!+09UJ<&%H'1Z=1O%\2GWV7(#\C
M%@;0:7U/5K=/NAC5">>T^R#H7(?\6:/!9UM+W2*77@1I9>NA)"<1O!_NO\_3
MJ_,A80"N\XY%ODZ,['\H'JW)J99E2H,95 @:0D@2$LE"."9-PM9'#FTH'TC[
MD3.5AW6IU@& ^77X>G5)+/WC8CQ'XI^86GY]/0G3Y;-IKKF_3Q]7-QYR8%Q+
M TYS1[N3*> -L6<4>6D.5138NI)[?^H&62[6*79F9U'D</QLXB<AYE5"^FV8
MX%_"LO95_$JL/9]-)K@Z]%N\*IL):F\41F[KP!I9,X'%@E.6@^>*Y^)L,J[U
MV=@19 ZRQNNLV.U8M3W:V54CT$W^;AAZ5?YS-LDQI+^3"X?CSZMV6IEI8Q/S
MX$NF$,#6$I_Z5\S,.,.RS.5.@[$=?5;W?V>_U04]PJ]+W0QQ:]]UC(>9,96Y
MAR)274J< 46=$4+D#),EU[_Y *Q]:>NWE& (IK$+)0YG4S]-PJ/@6795GB(9
M"8K51EI,)F Y\\)<3$*=Z8K-GA3W6W(P #R?4>$#S9!M875'7B3DZ.OX=K",
M(?GIA?:;8"*PP$7$K*R-S3OXG4)PO^4* P#W^=0] /=BA[Q_&4_#-.TO;TW!
M:+*L#A:MG<$R1:2>9P6F[CK16OI]Z[;Q;2COUVT^=QJL2[4. ,QO\-.EH_6J
M7-42O1Q/D;Y]3M2,ER./407).1AT'FKS!:CWEH@KBA*TR3*9UI5ACQ(UR*17
MITBYU]:^I=J&XQ9O!J6W^>'>:2>-JK<]?2WE$!!9B:"]IQ\SQ.1;U^7L)&:0
M>:MSPJ^-F@9@_DZ3Y:@8&84C)\G+6&O?:*N)' 48SU)TR)4JK1W5TR@>9,KK
MG,@]H\('&H9M876'7VXY<X&A(F:=!L6-A:B#!8O1<96M2[;UC<63"!YDSNR<
MX#Z?N@=@NG\N!1-% 3]_21_"]#V^(4_DU;2*H/ZIV<+/85(]I#<4AL['B?R4
M^HMGTWS[!QN?'$E7 LH<ZA7C.CA:(_C:LCGF0/$P+PEMZX1P!VSTNPXZ"]#Z
M5O@ ,'\2L^M^MO?+4=/DHK;=VQ3K6M2C[(I@1CK K.N@/DS@K>9 $LN%V\P#
M:SVTY;P<]IN5[FRE#!@F W&*CI;.M1QH$_TT6X3)K_/9Q2?Z%[MRFYKIJ+4"
M9(P,3-;D.@K%0)-PM/2BJ-PZRW=._OK-? ]S 74)D<',,SFKA(3 VO@U XNR
M'GYQ3DJMM;J98[ J\JB["$0&M8@ZNV_X;2RB0R RD)[!)\GGEE@VA;5-.#XK
MDQEGD%(A"Y-B >>3!9=90*ZXYJ[U\,:S,=?O[<AA+I[.P/'40Z 1Y[X()RU8
MYE8J<13O>0?">)&,3\XT[QG3?2C?V;W*8:+[("7VWPWNXM.GR4J(87(EQ-^F
M93;_N%;CE3AMS-QSXZ!8+*"L\N"CL\"+5$864IYIC<P]2>OYWF-G(.Q",P,P
MD%<-0NK$H]]Q.9*H-(7A"8PN%)W'F"$Z%DE$4CI%O\BN]1G5'1)Z;JO=A9IW
M-&4Y1N:#@,QE4RY<7'&0)9/<U2A4H"<O.B6(G&RL4IB(%1:B:9VWN$]%SQ?N
MS@*<DR0_#.P\TM[@6E R)"M3;;_A1%T5)I.@:M>#J"+3K&!L7M:Y/W4]5[6=
M!VM=:&J0&'R64FT L]BXQ&("BX4S!L(54_,"=8)5J2WD+;<Y"ZU\]Q/H[],U
MM/'@;3#Q*/1.5-!P*M;NLW;5(VN,BY'4#$5,'*2R&I33'IQ )!:Y9"8FEEGK
MJK4'"1K:X/ SH>U8E0P99J_G^(E<ALL^@",6BC<%#4B126 4_H /N0 J=-DS
MAREU;]YNTS2TR>!G ML)BADRWJXL]NOPM9KKVJ(_I?D%$3@.<3Q951:-<@RR
M!!M >B1F+3/@D7BW+J$-/#J#'80-1U ZM('@9]YVFRFQ[QOF]UG\6YC/PW3Y
M]8JCKR-ADR?_N$#,-H$RA4'46D!VW I31!'BSO'ACJOE>[QL:(.VF^*J$XD/
M,GZXUZ(O(05;6!OG(PJ*Q0V'6!)6)X+\4Q\-D^>/78<V3?M,1NPDY9R\Q=ZI
M0VH^Z_/CIS#]2J\.T\OI-V&:9S?'G;?8V'>BYR//;#2W\Q#*&TWG?+7QMIMY
MH>L)0J\W6'E5+NN@P^1FANC-F*Z0>/!% 'U!D:=$,EQ&%Y V>NEE$#[FQHN[
M">$GWWZI[6;P5=DX#=;:%68#!4;6.E ,)3C).-0^SJQ6RLKF\V#N4]%O3N3\
MF+IW2>4TO33;41O;MI?C?UR,,_D'9!=^G57[/9LFG$^/L6D[G]7$ENU'Z:!L
M&'J/6:,'H^JA>(@$$$^@R[Z$8EU@W+=N"ST(&_;V(M;!\4MZ^(O915P^B[.+
MY:;.WI&:?J)_\?>1MV)5# 84<==YX,60FR 5<&T3"A^X;1Z<[D_=MV#S#L'@
M_=/X3O0X5%OX4UB,%[/RJ>:*UC;^&"NXY2E-[-]CU#6R?)?9"-+Q:P)<VFS*
MR[S4W)!+[YTCES[5428F!UC5I G)BS>MXZW=U)QJHU;B?%5N7C#B,LNBR3&0
MWM">[BDJHA I05"1D"VS+<U;BMXCHN>AI&UT?]>,G";JH5J+W_&/<,W1I_EL
M2E^FM?$]QFP\]+@F]F-O>KLW)%FZ'$1R$%5MG(5,01"&0<'L&-><OFY]I;,[
M0T)RW7CX+;G6EJ&KBUF+ZRSOZC-CVJP)$HN;[3,JSZWW#I)+'I2*&>@'"C3S
M3"JGK8OM>\>=3O=@S=4A"+O?CN#,"AVJA?M/G.0RFR_"!/-E]?K[6KU. 5C>
MJ%L_+1%V^$N:6,,3>6MD([>7_Z]OU-S<%MC8A3$I+U4&*ZHS;ZT&5\=\%2-*
M(A?<Z.9M^@\D\>118+>>^L@]B?K3R6QQ,<>;A4=QALN%5IISS->K$QF"Y!D,
MN1R(M/C0MCYS/Y7F?JUHEQB\-QOLG-H=JEF].N^=W]2;'6$WMSREB6%\C+I&
MEN^FQFSCX@#/!AVIE*,0=20VA^ 5 Z,*,]9P@\WCRRUDG&K!7L["=/'[;$G>
MP#SD>IS_:OD!YQMOV@9L0<O'2<Y 2\M <?00:3%!B"6DH%QFJ?4 HJ,([==6
MG8J:N_:H>UT-U0AMUA\>87WNE2^>:G9VTM/(WEP/2;U1Z,V.IKR2-@40+A."
MG$P08S*D5).=1>V#[&S [7URFDWPW09=YUD1]4#>46!$84EMZRLCA4E26!Y9
MT5*WKWW=34_?A=9M,+%S(.^I&ABJ\:C=3>D5'\<;LQ&..2_<\I@V1X6/T=?0
MJ%P^O\[ZOIQKM/SZ%E,=&7-KH!U/EN40P/G5_=A 4%+% RJFN9#,L-)^EON^
MU)W<]FW[&(AM\#>JMK2K[2"$)@=>" W!T%::50A&!E36MYXPNC]U_9NC#M!T
MKV5;-\H:JJVZFCSVJ4X>"[3HKX>T'6&Q=C^LB=W:D]9&UFOG3+:;LV/RJ]%&
M#LQI#4J35QVXLD NMT9!WTO7.BO]*%$-NEEO?\'6=$,,46<E(+EZ+P69!*^%
MHK^BU98%&_W9!# X>]46/UO:67>CIZ$:JJO$RZ?U-0!:_F%]#6"R<4/BA$31
M@\]MFCK:GX-6EFS]PL75U8DPV=@JBTP1<P936YXK5N>XF\ @*1YT3MKPYOG@
M!\@YU7KM<U=DVP)AQ2K):.D9\A-("EJ!*RZ"U)'D4I)GS;NU'4EJSS:M$9+N
M6K-SZ&VHANWZ:L"D7A58S,?O/RQGY6)!WRUPN2 SL?K%B6;NB+<T,7JG<M?(
M!+Y<O?T:JR5JEQ/74&S$VK"" @1G"B3O?2[6IB!;EU7>IN#D+#J2^/!:N.N'
MWZP++JUV?M4(O5  Y(T"XBC7*J)BR!,H.K:N('F8HG[-U@G:OY<2;R?XH1JD
MJ_10IBC[E+S5ZM\W35C=IZA5H0$]>$N6,SFEC$^>D%%O,'!C('A+_GI&7>^;
M^I1;9[ZW4W+ZH=MZWE)]^D98H%60DN(/Q)0H_J"].S*;:E=%&Y-7QJ36%9U;
M">GY@/]TW=\_-SM5W$.U#6\_D$S3^@[C8DE<S3ZMBA'JM;EZ-+CZ622;F&N2
MYBA/Y=!7-+$P)_'5L-II#<)7I=Y,1'I])>(-3NHMSN>SQ7*QHG-%Q]6PX6O
MJL@)1MK"JC,J =9#E%( [708I7 <FR=C3J.X02W4?F__:?/M&T=-,@2F16VC
M(LIEEPLN&# =4,;@LM&MG:032>Z_$NI,^-Q2&'4V50_5]%[R2KI:?B6)D@32
MT56E.Y_5Q)CN1VFS2JG5RU[7E[W;>-G-1IZS"SK46QF>=,\]!R]"O>ME>6(\
M><[:#P-]F*;3)Z!N?_ZV%(E'(93$ -+%FB+Q!/W:@X_XSAQ%,LJW;J1^ 'E]
MUTLUQ,[]>:?=*&FH]HGL\L?Q^K"4O*9UP>I[G*8C$U8//:Y5\X?]Z&UDJ#;>
M5^]);+YO2_C!ZX"5XNIAD"+XT<8)@9D$VII<E,N)HI#&R_8@ D_NB;_/RVX6
MB#(4'L7@09;54?NJG)"BJ) STT4*JUWKNHC#*.S7D'6'K7MM\+O3VU -VUM\
M7_D=W_2V/2JLO?^4-I'K(]0ULEZ7KWF#]>UU-.?U(;8,CA6T@*$>8I-:P6G:
MQ+3BZ&2ILVU:K\Q=M)S<E^'.<[<!FCOO8H@&N$7R P3Y!H''2%\Q6WR)4?O6
M1?A[D-5SN_H6V+C77*&Q,H9J7:Z;4XRG)+6+HZM%MSZGB85YG,(3;<RJ1]_U
M6WZ[><NVO4MF7WAF8+Q%4 8][5W"0:G=EB5M8#'NUQAQO_>=:E(>?LM&*2'C
MS@GK+^?#L,+!*2/ NI "!D8 ;QVE[4E:/Z:E*TC<M3)=Z.=H2_,9YW%VW@XN
M5S?#C[$X#SRMHXXNVZGMOB&#,%D;A1&XE[2[Z!0A*)2@.;=2%:=0M2X7.&-G
ME]4+OJ[_OD$\"LEYI&TUIMK1I#@&P=;><"@R20$3%ZTMTGZ4#;:IPB$H>;0'
MS.E*&4"3VE]F<QR_GSZ_H'=/T^T4VS2OOIVL+S/?930&H3P*#;%HLK>E6/".
M1)LMM]JKQ&3S],?1Q/8[H* C0)Y'=7VWXJYM+HC3MV&"^PUMW;XL#0M>1<O)
M.^ %5!#$LM$6'!KI@A<JW;VUL\,I;4-/OT,,&@.R+ST-P'P^T&EGQ_;@),/L
M$(*)K!XC>(A"2"B>HQ6\2,-;^RF'TMCO$(..C&6GBAIJXN*^>_YN51O>)I2X
M?%9'@<0V2L_0(%(K9RF*!)5J!81/ 5RI8_*\S"X*[:1J76_7/HQ8V>.WZ0/F
MBPF^*G?\A)^_I%4#L#=AB1M.PDK>&V7[/!DO91T))Q79855/!:0F^),YUMG4
M%F![[9>GT3'82.(0H-S:)\^HEZ&:I8,[EQUOM8Y]53\=VCJT>0?WR*K3\421
M8"Q%!RIZ27MM+L"5]I:EF$1H;0C/W*?M9B$>U--K/5OUNDWU3V$2R)%X^P&Q
MWO%\1IJM'PN3FQ3E1I%;=CK:5!(8YS0HD2TY%:A 2(PQ6!&%:WV)K0<V^Z^!
M[ KI]T[ !HZAH>X ]UNT'6_B=SZKHV9R'1KI;<W!A(P^\FR &9W(VQ .O!>:
M_D*AA-/:LM8-,SMH*7>S4*X$NNI9MNI>1I"_/..9OK]Y]4:V"K-0V6C@M9N1
MDH3Z( L"9BQ!"YOH)YT9S8/)[;M<\C0$[39PW>IMJ(9JHZG;\1;J_D-:-YSK
MT"8]U&+,<&\+3P*$-Z1A(S/XFK9+)6N6?"K%M)YPU6';N1NL7[]D'9LM[\1@
M7B2"M"Q$'=9K$CJ"2XAUX"]7.06)I3LO[F':^N__U (KNZU00\T,U>1L:?UV
MO.G9_;"NVM1U;(KV;"\F+.<6'0>!=51HQ @A%P76Y:PR!I6:=P_HO5G=S3+0
ML:BB#0>;N:P-K@VM $O;KTV.5@"SNK2VRX_1U+]AZ@ Y>S:F.TXQ0[5/.UN\
M'6^E'GMDMZWI.K18>S08TZSH%$TM[R_D),L$/EL&1N<<8\I!LM:&JK\&=1L+
M0:*2J!TP7YO3VH D '()N$8*4 SCRIV-[8'8J+98V;L9W7$Z&:IQVJ>!V^FI
MICV>?K9V=%U:KP=:B5$0C\G6'5+;4KOH%(A*6"@U!>F$%T&T3DMUV)3N?IKC
MH39G=X(.E*E$#!H8-Y&"#JL@.%U DR14\#+JYAFZ4^@=;GNZ0S#U>**J(PT.
MU?(=WL7M>#MX]+MZZE?7H8V\T[<,/2/(<@Y:A P*JV]/FR@(*40B* 3G6D=>
MK;O6T=-JLXX[2\08E,A" ,-K$MD( <$8!MZ%Q$MQJ$WS1E3;21E4G[I#]'V_
M3]WIHAY ">2V=GM7IO;K7^K,>?KO'18E4]$Q$AM9]MK>3];3B%P@*W(UG>;"
M-^_:=@29_5:--T5:MRH:ZIZXV93P]!SJQE.:MTSLLO)G>_.\&'STTF9 7GL!
M6QD@LMIU7*%D**0.HO6E\&X:)V[48-#S-RX);K3U*XR8908H1E:UEE=#1)5!
M9Q'8ZA)R;+TK/T[5(%LJ'H**!XIA6BAB %O;#4>71I)\R5?E5NO(.X$$US;7
M<0$4-% $$S.)#XT%6R0AA,(:U7PL]*$T]KNI=0J[#I0TU)WMP&:8QV]^Q[VH
MCX:?'1?/GM!645J/3@N",W,,5)!U5IJK719E]$D877CK>[K]MOV\69(W'1\W
MJ7A;-?=JK<UG:3G^?-_]=(653 XH:%J2H)PO$(JH_<"E2]++$&/K".%TJOLO
M?#T32G?;X+,HO.\[J8^Q^VP^KS<Y5K6]7^\U/7WV1YCGWZ;+^7BZ&*?_"I,+
MO".+J+/%8!7XC *4HN"?ML-<V_,(K0/FXM1CAOL<A/;L2YP?[X/3?L-&)BW,
M_<_D4LR^(K[%^>=QK6C?*I_)ZI'TU:OR!M/L_73\/R0>G(]G:Z5MB$):E5S(
M%"^(6B^A)3AF+22AK/'!.*M;9QT[8Z;?*]^#V!SZA,=0/?E=G9B/=]D?>6*G
M_:,[O1SQ2"=@R;.+R R((/WEQ9A@ FAKK?-2^\#;WY3HMHOTS=+9]:8[>T=R
MG$(FY<&9@*"*5W64?(!4(N,L^:!4=YFN_6CL^X)$0Q3MMG0=J&NH!NQ^=],3
ML@V[GM51']8.S=7.CIL\NF"-2P2P2  +D=P[Y2.AK'@,DBL96F<#.NO&>N,)
MWWG#;S<R)A]X_<N-LR6GC&>>7%J']08]XQ $!K"U=5\Q2KOF8SV.)'6@75L/
MP= #L7IG2AM.@/XKSM[/PZ</XQ0F;_ S3B_PMSOK?W,&B<PLA022(XE5UPI(
M<F_!BLBE+EA$E(^9L!/>WV\XW11LY]+"<("V&;:\FRW#Y-FJ&ND.;UIY7S ;
MB,8HXDTR<$(&VO]5X$D6S<VAF9V]7MQO\-DEM-K+?:B.UK8FS\>[6@\\K;.6
MU!VX6X=T(2[$/\\I0R8#4]L>!HC2V-50!31)>C1ZK\77;6/J!;VA3FVHS[@(
MDU=Q,GZ_4L O](HP^6\,\ZN:G:ME<+=)D%.V.&L!5X,18^U=IFNSB%I":X7,
M:K\Y<T3)AF^UN)3%2@XG$SG\IM6'P.7*.)U7=T.U5#6=%Z9?Z9UA.OZ?U>/J
MH>UU_Y,7N SCR;$SA_9Z=*OY0X?ST2A^?+7Q4D+48C89Y_7RF.;7&QR]*M=P
MOFXH<Y/-T$D:4S.DF3ND#=8(B(G17]P8%$83P+%QI-6$\(9'$CON9-95-]+!
M>F6UA9(+^1_D#$!@VE49:1Y35B9WUUKD(<KZC3O/C[T'S@Q:Z:_'4&%QRV/=
MSM']GR+^'C[BLR_CQ8CQD)6TY*_F'$&Q9""8(,%+:[F5B6M7&FSHI]#8<Z:D
M [S,>E!>SR#=Q<>+V<<PGHX2NFA9<L!YG;!8 H/ !07JDGM3N N,[W4<^P@,
M'Z:B'Z"=%P6S3E32=[+D.2X^C>?A_YV-I\O_(GF1L_T7_!AQ/LH8<E E KF^
M]1RDY@%*%. BPX1:(JW:O2*SG:_H#S4M%3AK+LU!55GOL-WDM.-OY%TL1IYY
M)27Q8U.B153KPYQ@"JR/F))*Y%BT;ANP/W4]IV^[VP$[5M0 (+B=GU=_3.D-
M'\:?7N,\55V^QY$0.3N3 AA9[RB'>B^/A=K52NH4?2PRM;XVLS=Q W?!CD3'
M7CUV3E754#,I+\?$;B:&PS3_2I;^/85C">?3$S(HCSVRS=VV0^@>5,;$6!ZT
MXQI8KDU6<B[DL7$'@D0HK:/].+9."0PB8W+[SM9ZLT#+G8R20G9;AX-JER (
MQ4 X'3 DKC*V+L+?0L:WD LY!%5W+=ZIFAG _OKV(B[P'Q<U1JK]&]_1/UL%
M1<&7)+U*0,%/ %7+KD(I":**@1O/&3;O?K6#E/YO8YZDXKN>6@-Y#Q,VEU&3
M$M:FPAR4(NIZXA&BIPW>!I,44Z7(TKR(:A<Q/;M=+53].'R.D/OP '09'Q=K
MR>PZ!=+7+HS*>2!_M( 5@6N3.6)L/;EP*R&# \XQ2GX8.D=(? "PN37,X?DD
M+!;C,EX7F:S65HXE.Y\0I,ZV5BAEB#5^P9)XB9+;Y#L8CO(02?W?ZFZY?;64
M_[#A=+GB?-#*YZC!HR=C'5SM6RT89.V-3?2]26<$U!"VM:80V!]>1^AC& #;
M,F5F8_S4E1EVH6B7,SA:@: X\_25K#(4F(L(D>UWC'C@1?0]2!LLV(X!Q'VX
M-=?.8$&W%B7]I/ST]>T-;U%J'9V5H%GM7I4X+=<<.?!$#D$H@=R#UG4HA]#7
M^T7FL\.O@9X&@,$C!FG]]/6@45VKS<:E('(V GPNU9?Q'"*R!*6V8:,5FU-N
MG?0_#V<]WTEN[#8.$ T#6",',;AQ,!V+C\E8!<5&LCG*YCJ).T/MC\2-K(%@
M!R;[&%+[GBTQ/-0]Y/!V!(&^BTM>UC; +R[JT>!J)TM99LY3[5A0MTQA#024
M"CQWC@L;7-+[E93<>?" /-6N-#EK)-8A&+];6\S-";2(F9P9QD&BH=4DB8V8
MN85DC:N3WY5IWKY^!RE[X4D]E2VXA;P' )OK5KEKX_YRMEB,#&>R).6 8;W_
M6A1YXZS6\P66(],FMA]VMX6,(9U3':G>65M9'PX7OX;+%-_7'@U- /,\+#[4
M/[4ZY3.%4]/EX@V2G,:I-M>A7Y K</L'&Y\<<1.<3BH#CW5LG786HLD.4B@2
MH[;<A]8'$B<1/*1L<QL0GD]_@^C8=<N->-B+N&3^+LLN&%\">1#>N>I0> =>
MUUD=10?/C6+2=)!*/(WH(46[;6![7CT. [HDQJO.Z<3/VP^S^;)^_7SV,9),
M\[./=?K+B&OO2]8!F)2T)+W4$&4P-7>F,1=#CDSK,J[]*!N2O]<(A.TU,@ 7
M<+.!]&K=K/H0KT8GW-SJ75R.H1U%ZX@'SB!JD8'"*P\AF02&HO4HM371MS:'
M!Q&X%^KT4T)==_KIU<RM@N[;\GH^^XS3,%W^93P=?[SX6"WXFSJ\<K[*-XW0
M%T9QF06K@ZC#JR(X2U]QD;T5!F6T=Z91[TAT'/+6O?!DG@*>NA7X  S9JO?R
M;XL%.0,O+N;D'JQ;::Z:;R[>S6G!7,R_KC[T!L>KCXU2B*:>^$#0BL*OF!)%
M7K4A,Y>..:V*57OUCSBD0.I@*O>"H'T*$#R3I@: Q4/\5;+>XWSYS<AHF<B"
M9\BED/.0K:M=,<AY,$FEF*+Q[=VY(VG="Y?N*>'R+%H;Z@V<G\)BO)@5>API
M8'TF?_S=F]T/:W+K9D]:&]VWN1RT6>W4;#).FT/4N2S9N#HW3/,Z8B6RVIA9
M@<*@+1>FT-;9>+GNIJ91@[=?9G,<OY^N/<JT'E\P8M%'SV.&(B5QFPCKA&I"
M>-:)5EIR#!\%Q1[OZ3?KVTC1.QJXG2S7GGLF7!&^.J4U3 J>I(&<L?9L<IIV
M9BN #&%P47))O]L'^(]UWMIX9X^-M%HJ<=9 HCTB(5W2/'HVF5S23^OD\O2U
MF&*2Y@&"X;5[OHBT#W(!65JDGWB3@WT %0M,?WX_^_SCU3O6R+CZ[@89#]'0
M7_^#X[4Y:RS:(<#C^;,7(V4BV<7H07";00D1P'.OP IO!#%3>&D*!WIG/^IO
MI[F[4#A4C$-0_<]_?3/*10<9#1&9F /%58!Z<@3%J.0L8^@#;ZEZ>F<_AW7=
MJ?Y0,0Y!]<]__^]1Q)"YP0B8M03EB'J'UI._I*6K,^:-?NC*XN&K_O?_[N?
MJ\-5?Z 8AZ#ZUR]_'RD4P9K5$(E@:==+;MU)U&DFLLL1O7NHVNA@U=,[^SEF
MZD[UAXIQ"*I_^_/_'EEC?9"J$JGJI0Y1*_<5$GIYR-($)A[L%W.PZNF=_9SU
M=*?Z0\4X!-7_]ON;47$E$R09$5F/UF6H-9>>0;*HDK%%1-?4S:-W]G,LTYWJ
M#Q7C$%3_[,W;D?0N"%ZY=+0UJ:@X.%4**$29&3,L\8=JYP\/^-Z\[><XI#O5
M'RK&ONO/=^9";G+P@><4B?0Z,H7D(92!*+0'Z7V(EEE6[K;//#19^++?7G1=
M)86Z$/  3L/N\/'SE_2A#@Y]$Y:XFADV62F,CQQ2G.N3!5H\9 $+ZIID+23!
MG#AG4F5L?1R[)VE#S#T>"8=9][KIVT0]^XSS\![W9<U'C2Y92TYV#;*C%>#K
M'!ZIDO)&ZV3NMDG98:X.>^\03==IF.I:^$,].MVXXIXOCY#?UR/D,,UYX_!X
MMG%A:5Z_^HPG'+&>_M(F1[&->6]T9+OC?N$TW[Y7=G.\YV71.@K@5E#$;6/M
MLD';-D5C3BHI3(X/I2O;7=O?2>+P;Y"OW9[,E4\&/11!8:LRQD-048*PM$EX
MID,*3^\*^0#.IKM$]/GOEQ^.E0&XL8^UZM%<$O49 7G-V&*L&5MF2 -&9!-S
M\+'UM,\6W;*>\(7Q(V!T8 >N0W0Z;(A>YBI06*$4CY"4(H:*06(H:3!9B>A9
M9"6VCK&>> >N@R!P< >N0_0Q#(#MU>-)<88I<P_DVGL26JY30+($+PHKNJA<
M0NN&M]](!ZZ# '%D!ZY#M#-8T.WH[!2BB"(+ :;.6U7.1/#6!; QY2 RA:ZE
M P/WS73@:@^_!GH:  ;/U/V&<9Y(R@FLI"U&I:SK/8<$V87L2/@FY=8-,@?4
M@:LSW#\%5W2 "!O NCNV$9".6DKF))1J693V!F)Q#A*:8D-@NLA.@[%_=O4Z
M'G6-NGH= H&^CRSNMI_"B-SS.D=CU9_2B  A1@LH@I/2H0SV3AKM6^[J=9 F
M'^KJ=8A8!V#\=LT\<$8Z7R?.LE@G/FD=@+PI3R$IYU(F5:)(C8W;*>-$.FLU
M\A2V]18Z'"84+Q=GUD7;DB*0,$@X$A4X5F\^^*B,0LRL^:G]$QM1<I"J]QY1
M<HC<AP>@2X/L4KTGXR,8+DDTQ@OR"SBKECT)6ECD-[0^+GI2(TH.4O)>(TH.
MD?@08%.[[%SU/[D9^A,3*T$P(&^RUDIJ<@@P"6#":OJ?Y$PUGV>_C9!^FQP]
MB>WO9/T-$827JY,[R[1,&B*O_?!*I*_0&K#1EY)IY0K9?.O;3DK/]NMT)3\&
MFR,D/@#@O)R%Z>)U^%J7T=70:J\+R24"\_4X*=.R\IS,>HI&EAP3!3>M=[S[
M5 P,+L<H]UZ;K),DW?/=^FL;_C;A-,S'L]4"LM$)72LMF:5@5RE5:/-/%JRS
M-L7D4>\WHO612_9;7]YO([4A[VQM]-4WX"[I_NMT\0G3N(PQ7W50-W7^B63
M?;UM;&2B12@<Q"R"KB5%(>TU#N$QT.TBH+\+_ V4.FLMX8' I%;SIK"XBB%,
MD8B.MG*>-2V;7!+4JC+ :&5F+BF'>[4(WQ,CM]_>(T#:J'0+2$Z0[P"\G.ZM
M]<OKNG23%5,N!T"F(XE&)'#:*Q*\DCF59)5J/=#@C.SUVVYRR+ONT+$V@&6X
ME9W7\]GG\8*^(!-31P[\2N;JU?1*(#]A(<NSENF[\&64?"PH?8!@'6E&)(18
MF &/W&+R.:,X2_',051_ZP>H1P)RG^*<[M#1]X'J ;T<KW2T>#>KS99?CC]C
M?K98X'(Q"H4AXSH!^D+[NA8"7&8,=!:.JQQD\G?*&'?U'&Y!SK=>0W,:T'M2
M^Q ,_ZU>J+^0KWG9BMZZPDL( :)6=>A!T> DX^"3E#DJC 9;MZ?<1<NW?E#<
MR$BWT.0PQE<<VTLWN, -%@Z&U4Z;@DOPM>LXID(QD1;>LTX+MUIW0'["IS_-
M'(_ND3  *TR^5$+,BU](4R]H,UDLQTL2^JORT\6"!$D[RV*D:;EZG17X=8\7
M)2!&+R"8X@1R+@QK/3YC#[*^]5QO&QRWUN\3\I!OK<MZG>2WZ<\+TO$?(\\P
ML! S&$F;DZJ)T<A-/?)ST>F$3.S9%[H%-=]Z]N2\_G$;I3\AE/\<YM/9Q7+Q
ME_"ECD,911]RH3^0,ZUHE;*D=6P"%&\<3\DZC:4UMN_0T._LCV\-T:<H^ GA
M>.?"_?VBGBZ\*K4!2_I VY5%50+C=519C2JD1PB!I) XEXF7; .FLUGON]3U
M.U_D6\-^-Z#X9CKRK!,_].N7XQ#'$U(N+F9E^0%WW&D\8]^>(TGKI[M/"SGV
MU .(()\,>2^@2ZE>C>(0E:!O?2DJNN"-:GVIXD 2AW].NS[?TSQX;\@A+#+6
MJ[U)0RC*@L4@,2K-,F\=Y?ZS!]")B.ZK!] A6!E DN=,UR55"MZ:C"#0%]J#
M68'@. ?GA9,V,/KS4 _]8:Z@[Z<CT4&@[N<:^"$(&\"Z._;FJ$F9"5<B2*$T
MF4!$<()ET$(2MP(3.;E=GB;\\QKX\:AK= W\$ CT'>7?O:^L,'B658:0G"3:
M:V=Q$2A&5#;(P!DK2>T5H'\3U\ /TN1#U\ /$>O0C-^6#F5>:*=X4*!BJ.WC
M@P-B0X)U*G)ED(1SQIYNWT^WEU.V^98Z'39$KTJDK74R<@&H@JF7H UX+30P
M3)Y9] :Q];VG1XD:D!D\%0('-QX\1!_# -A>K>U8]HZ6I(?(:XVBU;0F&:>8
M-XJ8+$]DYIN7/'T;C0</ L21C0</T<X 0'?.0X#B"\/B,GG%U2?)TH S*, I
M*Z,L2A?;N@7YT"XV/.'ROZ<0]Q^'M0$LPT..N<+B XFK_N?G?UR,/Y/IF2X7
M(QTER\%ZH,"!ME(E*.2T)4 2HI ((G.NTS3 ,41_ZPF!(^%X0G7AZ=AX6HOA
M<I[]XO?9$NLQP>J._!M,2+R3N?H=ER.!6FHTQ+*6]>@Y67!U\AQ2,!V<U\[*
M3KWR4QGXU@/-LR^2QIAY6@OFMVEME#2;?UV/+5J.G"J&G-(",?$Z?]D&\!D+
M6*6,RU&'3N[#'4ONM^YDG7TQG(2'IP7]UW/\%,:9-/5J^0'GZSJ.*[8M"R4$
MS*!1Q'IAE\1=4$%V7$@58I:L1_?I(=*_GRL:9UH2S7 R@.6Q)OY5.<2'O.14
M"2<,2@;6"JQ.HX!8 M:N#]F+R+V0#\T\/F9%'$_M]W._XY1%<"8T'(_[V3),
MSEI(7+>_Q;(JC=S!:;IDEO% (1$O%"^M[K@4!E%P#8;;R&(T,?#F1<-;*?E^
MKGL< ^OS*WL %OV@C:Q6K2Z_OB:]58W5E,"GROX&]Z6@%^@99)49*&\C!(T<
M$L8DI ^&=U$2VI"#[^?^R-G<G[:HZ;O@Y #6+[^8OG^)88%O:DG%J_+7!:[V
MS0WVG<T:H^00C:O'EEJ"L\Q""+HHE;F7=QM<GKX_[$G;]W.EY!P[1A> >%I[
MR&^$GNG[<9RL>=[<.).,C!F;0/K:_#9R!MX7"XETH6N+*R][W#IV$[[7$O'?
MZQ+I#R-/:V&\N*3P7?ARV5('@TDL%P2OC*HE=PF<\PJ<5DG[5)+JHB[C:'KW
M.WQC_UP'9X+$TX+_K[-9_F,\F6RL]5H:H+%>HY2UH@L]L9U\ ,=\BJJX%+#'
MMC;W"=YO ?SS^/ELH'A:*V"5'+[A]'+%6RM,HGT-C$95&P@*B#([8%&QP%6Q
MQK6>;GDJS?NM@W^>,)\3&D]K*=QS^X1"[7- 2**Z?5Z1B'G)P$,614J32I^N
MT%$! ?_GJ?*9 /&$C@_^*TPNU@Q/)K,_JMI&O"@N?)U?Y02M<AL].7\8ZCV<
M4*S+PH8[7M#IN:'[9.P'Z>_V5/C,>CX<T7Z-Z"F^)Q'F=WV>!X]L,#%JY2&$
MVBK6!0D^2@><:2995A3AM"Z-.(+,_1#_SR/@C@'0H_$^H13P<JI2U51*<_K$
M1F^7JQ-P3LS2/J7!ZSIK22E'08Q@==:7LLA]2:'U[85N.-EOI7RWI\H#@M&3
M/3J[XONZJE!%2^$-1R@2'>V6B8P)\PZB*#[EX#'=':?3^L3L+DG[K8+O]N"X
M1_T_(=37KOI74_ZN60V%F%(6G.<4ZJ0H2=!:@8B>J:PE.8C-H;Z%COWP_<^3
MX#-I^@F!^O5\EB_2\F]A/@_3Y=?55A8F5TP'+YUR)A&K(8$*=5@<EX&<06Y%
M$ :C:CXOY$&*]@/Z=WN>VY_V!Y##W/"_CJQZM=+:Q"!F1(I\N(5@8P0KLTN6
M,:-BZQ*'$TG>[[;8=W^J>TY@/*%\Y@XO;K/2R1GF43-06!VY+#Q$51"D<L7K
M)&1)'9>^;:%J/]!_MR>Y_:+@"7D^FT[>)K=)9V.]!\E3'=I=#"U[Q6I?#V,R
MYX7C?BW*3B9E/Z!_MT>U/>C[":%[NV>WP;>4H>12)-@@:5/CBH/G&D&DDF*R
M]1IT.(]K?RCBO]NSV5XQ,  '_[CJO WO;V22-E[6=6X%23VJ!#X'!L(*D5TI
MF;-A5&UN$+W?HOAN3W?[ <?36@UW2I0VF19,IZ2YAQQ%KD6K",Y9![I$'X6+
M+O59Q[F;\/U6Q7=_ GQ^D Q@91P;[V_>$]4F%)LB[8>IGH(751U"\@J]L]I$
MPUAIW4?H=*KW6Q/?_5GOF>$Q@"*)8SD>^2)"5,( RE0; =2R$)TM2.U9$#QY
MZ?5 EL%^X/]NCWC/"H5FD.][C-8;_(ST$_K]SU\^X70QF"%:1Q'6SPBMTV78
MTP MEUPBY\: $K2XE%4!0A8,(AK.LT\AGZGU\I,?H(4\.L]6XR@MKY&5 V\\
M!Z\3;:/>^N2>WOB?)SA ZQ!$]S5 ZQ"L#"#6N,7AEJ;W69!S&(E^9CB)W%=I
MY^CJ*6+1JL2L4J?Q]9&S+)[P\=D1,#IPEL4A.ATV1"];Y6.P/)<8(==67PIS
M[?>5/)![J654B/YF8.L_9UD<#(&#9UD<HH]A &R_:0G$2'!<@Y26D:@TQ2VT
M$NFKS)1GQA?? <R^A5D6!P'BV%D6!VAG *#K?B.YG/!&?->^5RRINKQMA,@Y
M@DR)AZ M>5*MKWB?A[-OO=/XZ6[  !$V@'5W$(,;P^Z2SA1^A 0L:TLF+"%X
MJPQ9M, #L9X[;ACRS\F5QZ.NT>3*0R#0=ZG-W1&+SJBDA7 @.*/X.5L!0<0$
M*:= ^R5W0NQWT_N;F%QYD"8?FEQYB%@'8/S.F>7'H"0/48!%GD&%',!+HR$&
MKI*SDFOS]#R/E]_7 *UANQ_'86T R_" <ZO+TX=1*2S*(B79*:N!HG,#(68'
MB44E)?.*.>S2_=B+RF_=\S@2<,?7M!RC_:>%[^>S1>WP4)NQ+=[.)GDD0IWV
M;#(@K\UWI$2(3E8+Q)(@IR\FUVDN[S!RO_4H].R(/PD/3POZ])'%XO5\5L;+
ME_35B#GC<I *T$3BE#-%(4TND!0+*;@@H^RQN/<.M=^Z_W-VX)^"AJ=X:>^J
MF.+F<#<4(X)3M?ULJ;.(/7@O!7!C@\XI.33===VX2\WW,Z?J&'CWH_2^4RH'
M^6T+)$+K>-,7Y,)-9JN9%)?<CXQ4'BTB:"Y6]](SQ)0M""=2BAH%^M(:Z0]2
MU(_?WA.*CL1P.Y4^,2\%I_359&5W/HZGXRKRY?@S7G&NLV7.*@$,:7=2VC,(
M&3D8Y%P8]#SKTJ/7\C#U_;CO_0*_9PP\(2O^%B?TB/?$]E_"_.^XH8&1YT)S
M10%)<I[6NW8:?%$>)"LQ*N$3Y_NETYN0TX\S_K3L=R-E/B'X_C*;X_C]].<O
MZ4.8OL=?PWBZBBR*S:)HQR!5&:M$C ?C*;R0"@.744FG6V-W!RW]N-E/"[@M
MU#B<GKX',/X"B=8T7L.!MIZ/L_ER_#_KVQPN"1:Y]*!3(N9Y]! <TK=.)HO2
MEL)Z3(<_0'D_LU^?G,?12O=/R]>^*_:1,TZB"@Z<=:E.84!P"0L)/Z&/S%@C
M>H3Y77+[&0#[Y+!]DI8'<!OS&%;7&:WUOE5L"E@2"&XMJ%@X!/*^@''F37$Y
MJ#X#QBT4?S_CNL^4ZCX5%4\HW7W#X2^DV3J=MI8.+3_,\L9\YY&,&BGL0 C)
M1PI  @<7&0<AK6,QUKKFYGWJ]J+L^QGI?8XT>'LP#,.]V=JYZ?-XL0Y>*K\U
M:'DUO1+53U@HIEE+XUWX,M+)*Q4M@RP-K?WL2/8A*2@R6F(*HV"M;^F?3O7W
M,\K[Q%WAG.CH/\X]V"9\_!3&\ZK#5Z5V^'LY_HSY<@9;0!Y,L132)V-JLX0$
M7I#TA1#HG;+<,=M\6]A-S_<SK?LLFT$CQ?</^2,\P-^FM '1CG<5 24*W(.R
M!HPEJ2L7B77D%C@+ 6UMV>K[G<Z]2>WW,Y+[3/' *6CH'_Z'>X%K;DE;JY9E
M:X5>\:XT.H]9@<O:T]*OG5RQ[GNF*,Y<DI;S]J'  Q1]1Y.WSQ,#M-+^4'W_
MVU'.UH_<=?$2IRW.:@;%L]J;*6@(RB=R\;Q4J>@41 <IH1:D?T=CN9N' 1T#
M91B9TOL\$1\_EX)IN>I?MJ53F9*H1,P,#$^K@ST.P4>$R$OR.G"&[BQ]FQXC
M]#L:Q=T<^TU!,("=8(^UO/@=B5MB_-ER.1_'BV6]8?9N]@9K?[9Z&D+_8/EU
M5!S25E<L)%2U5VNFV,>+ )K+X,@O1&Y88_0W(_X[FLU]RHKH!RQ#;>IX-8]S
MC@G'GRN?;],'S!<3G)6KW[VY_MT)31J/>U&3IHL->&S41/'F+3?GO@1E5T(J
MP&1M#VW(M2!W D'R''1&84)N[7YN(>-4$WPET5?7$OU]ML3%RUE8M=3[93PE
M:T!+Y^;5ZSN^)2N!-G&(B=PIA<G13F,RI,B4EL:4U+S&X$A2^[U>>BIR[EK!
M<^AK )[!&YS4/,OK,%]^?3<GWDANU<#_]'7S-ZN>'CYF'5DP(&,=8("K,F+!
M@1468M2<E]QZZ]^?NG[!=Q:PS,ZBN8%A\K(CB%?)*L<C).4Y<4 K.7B+D#-1
M+XTS6K<^@[Q/1=\&KAM]/P"K(X0_,/A<]H%1LDC-F8#L&:VS(CPX5BO)K,TR
M)RPZ\0[A,X1>/*?J]0&8'"'D <#DEJ4F([TRUC<&^B:64B@U,J^ 1T.KB2D&
M7CA-*D\QE)25S:T3/OO2UF]_@SYVO4ZTUO>M$3+G&>\'6J,@F!.I!+!2T@)E
M+D(PSM/:4B+&H(.[6XNYX[1IQPOZM4C=J'+66*Y]8^,_9Y,<0_K[1GSS.]Z,
MC=>UVEXPL,4;HC]I<%QG8%Y'XXK*LJ2]$/+@:_HU,]WCI)V,!["OK<XM-S@9
MB9*]*61I79(4!4=9RU64AUR8-DYKY41KW_DN#?VV(^D40$W$/D#8;"P F]$$
MYAVX$'5MW<PAE.#!:*MD-BQ9WCH!MYN:?EM_] *E(U4Q % ]FTQF?]13CE]F
M\Q>SB[@L%Y/[^_$5<SS'J+27(!+::FCKH85#\,4$Y;S1BK7NX7L0@?W>-#D+
M]+I36/^58'<%><//Q@(+/'''$X6N,KOJ&F:(5E$06TB:M?3?*]L:@P_0T^\-
MC_- KI4ZGLX)XN]U9';MT-'TN/#>4SLZ&WR8^@X/ E%RE97AD&TVM>BB0&0V
M$AA*0<.$=[+UVAS00:!$QDS!#):YNA1XAJ D@JZAJW.9+'%K[K^9@\!#D-/J
M(/ 0??7HJBTH_KUA<?NMM_L_1:SMVM>SBI3B29O_O[TW:V[K2/8'W^>[9$3M
MR\M$R)+E\83:4DBZM^,^,;(V"=,4H#] RM;]]),%@!0WD#A '9Z"[.ANM4S)
M0"Z_JLH]0YV$:.KVYDA\H@ F,F9E6*#'81]<$B$W,+G:WG=K/!Y+XVDF!P<!
M:#&!-B=&[2X^MMD-],B5T Z\9@@JAP1.D*M$1JN*:IT%VROG\P0N'Z=B&N0]
M+PH6HZADZKCKR\LO7V;SU;^W!M'O\[A-<R6??6:H0#A'3-1?B'(#/JD@I,F:
MXWYM?[N^83K,M%3?HK4L>PAG[.L/95\<ER5 7&_M2^0/.4[VAO*I*#(\F/'_
MI S'?@M'U=K4U]-5RN)C7GXY$UQ'(02GDRCH&-6A.(&+!-S[&#-&:\R3_N2]
M3SV1Y. @I3V4]!DLP5Y4_W"$F 7OL YI<87N53HC=*6&RIAW$774\MZ"AI\X
M(W@T.(Z7<3.T-(Y*U?=]3BB;Y=6/8N\;/SPB-+7O1S>)3QW$1Z,@U=77?/_1
MLO$CY*!LU)P%,-5Z)HQ(\$H5</1D60PZ)68:FP"/D-,D.WC]^>\NE_$SKG):
M[P$YRT''Q(T&J;*FQ]FL*WL2&)\"$P5%8J/D!W?0,_6:HS:8># IV$(#'=C1
MUVR\KM.J/U]Q(6PHJLAU>S5=JY%[<,%G$"JX8,G,T[(UCAZF9.JU0>,@J('4
M>\(.O<=GGAE-S[B!5*K_:((BMR 9"#DRI+-@A&U=VG+S^Z?>LC,R3H9*N-<$
MW UKH$7F[;&/:VW2/$NN[3$@\:BT3$(#"EZ'O9#1BUYQL-8I89AW^NXT\I[-
MF.N/_O=R=I%?+?Z<GPEG<F;:@'%6$H,R0E"60_(^6>G)6Y"M%]K=IZ)?DV6(
M_G=>)(=)^^#KY%M>AL68OE,="$8OVI?9C[F0MWV/[0^/N&2&?D63B^<HOAI>
M1M=?$VIG_"8J_2''2X+1[.9 :!6L9$Y#M,6#PI (I;6/($67/+G]V;5?8;PO
M=>W*!&Y\YR88RKCVC!&C-N<:U8@U$,$=%&9C)($D%UIW,^VF9OJK:P2T[*X!
M.$H9IYSF)Q8-.9*%Q!=(?#E;\%'7*3\9B5_-U=W)9W_;-/]Q&&F5R1^BL+XS
M^29:\EMTA*0TJV.E(J#3&D(P7C.R2\)^R[7_CIG\02C8/Y,_1"53YTM>YM77
MV1)?XAP3OGEWU:VJ2T!+A] )HEL)) ^9^[JF!"49J$HK[I\RTG9_?+<Y_$&*
M6S258B<X^/!G3GG^XI<M!TP)ZS *D 59[947X&S,P'+V*0BO3%)#<'#[XZ>)
M)#X##HZ0XM0X6$?2-^+9)A)S>KU87@EIM64I:*6M8!F*ML12D@+0Z 1>V>@Q
MBZ3B?GO8]ON^:6*)8R)E!#EW$']^T,Q[<YUQ]KPXIC$3^74X<BKT.Z<8V!"#
MBN1BR-@ZA_$X1;W4^S0QBD=00@>0JF&76H5R<\V(+9I+:0-HX6O!4]2 ,A3P
M.43D!;D3J3&.'B"C0X_J0"TOVHK\I&*3+9(>^WSL6#'(9TN"[!E)4KX(X>O<
MUU2#V(:1L<.$(1<K>1&91QY:5W<^7]QQORU(.@@7T2IBO(0:3//@4V907*(7
MVW,KT3470:N-6#U$(X=@Z/$!K2U4U,$C^ Z_;XR#Q8M('"WS+KX4RZA#D*#Y
M.B.%9"\6P4%&6THPJ6#S923[TC9]W<@SH&\41?5:)?G :W1S;G/;!_6A3Q[K
M37V2B^=_5@7GNI#/!X9K#DK6_:[5'&->9$%R$Z:T'RW>03HO6F%=]@A,*@W*
M8BU2)K.6YT1^=K",2]68[Y\@G3<$+0/2>4.4T<&K^?#=^\>"+(3Y:G$^2W5T
MQE7$99T0*,2>YH)!(">;[G\AP)O"H7@>'-W*G/'6S^=@(CMT.P] Q^(Y575J
M6-P&%ZV..CL5@=>Q:@JYAQ!2H'\TWGL5=6D^6NH ,J?%X\C .0:F!VAQZNC_
M-G_Q_RYF\XO_)LXNE_FJ&;4X%A79JUF5NN-:)'#:)SKK=;B-(RO9F*>LNL>_
MXH1P=(AF'T@3'2GF#FZU)X*0+D833.:0>,V.6#IO@<X:,!-##DZR%%K':4\T
MWG_,V]E0"1U :K-&=MM,>&W01N6X+S6<;9PAGUPE\#$BN&@<)VLV&]-\^MU#
MA'1H?!VHZ;M]X$>+O0/LO,35Y_J_>IE_P_.\'IQ&K,PB7=[U#\AGNOV#&W_S
MC(P 008  V%" "6\A5"4 Z:9M0539*5U-?]1!$_<@WX\8!93::]A@FJD28N9
MB:2E(!YB=*!<TA"D0[ &G8C9Y1"ZF[0X7D=[<Z@UDWT72+K5DQ8$"R7(3!))
M$90.))9:>69C8A8W0[E'"!3VT?77'BD'R[8+9+Q;YJ\X2]L5S5=RF:?JUVS1
M7ESQ&<GR]";4"B9!ORM20T;F=%3(\&XEU_$9HR>IFGB.=7,4-=9#!Z;6+1F=
MT4MK3)$.D.Y(.ABU<TV*Z@F'*(1,9'J.:IY//'RZ_?MTL'0[V!S];KGXFI<7
MW]^=X_PJ2_%U'4VA*U2&XK*L"R**3Z"D+!"R%C7QCJSD$ MK71[R&#T=!@3:
M^'/-E-#%._8[*67^:49VVN9D$!.__K7=]EL'-?PY.S\_8YFLL[HT*;D:CDN)
MN#)" C<8#?%5E/?-+9^GZ9K6(AH18LV5TL&S=DUW<<:G=<=&"8H$$PL0M0Z$
M-D(YRURXNSOH:# - LQHQL^(@#E(N!V XM7V:^M*[S72?ULN5JLS9%E:]!JD
MD9*@C0%0JPS%)A.MC9:+UB49#U,RK?4S(F :"+X#^&Q(/ZN+Y3DA'SRS=>L\
MYX#)&Y!6)</)'+2B]8VR^>9IUV2,'K,>)-@.S.,W,PRS\W6]SEV7@0?..%,"
MHN8$;*X1L$@/@BMK$RM)B-:%P[NIV0LV]@1ATT@!/=PLVS#F._Q>8YADYM-/
MEI=$QST6SZ3FT0@M00M>)981/(H(3BD,2@=)0ALIHKP'>=/F,EHA8D>4N;5Z
MNG#)/GQ>+"]JE] OB^5R\2?9_*LS15S(0@^S*8R8J$4VR*6%&&1PEL<DFF^2
M?H",:7WZD;!TK+@[N*W6+:\/0-]$5ZR0 C0]VP1]G\$Q;L D*Y1/RH7]=J0,
M0,T.4J9UU4="3@NQ=X">*U]@T]]#'L$-ELY84-[(8.N\(@TJ>(3 T8+WSAD3
MR 14K4,_C]$SK0<_$HZ:*: #,#UP'"QC/M6J 5;'8*GD(A%O&0C-Z8^X0:]:
M!Z8/O(!&\^1' LZ1PN[!9=LV1&_;+E[BUUG]Z(RK_#:<SSZM-;0ZDY@31\]!
M&E9 :2; UZTMG&5NA ^B\-8/V7Z4[04K-Q:LQG3EVBOFB%6L%Z.823=RQ#R*
MA)IE4)49%;( 5\L1O* W7/-<6!IE6?F#U.P%*G^"H&JD@+Z>N3/GHV)&9!"!
M$_V2[O(0%4*QA7[.C(QIQ/=M/_^>G2!:#I5Q!\_:==KN#+-./EH#F@=ZWD7.
M$ 0Z<([8I_]XPYN7&UY]^7[0.-V:ZJ'R[750_ -]TAM7X -]=J[_W+;A>\>'
MC]7SO0\OS]_V'0,KCOL(*2N"G\L:?'06K"ITL42O7?.D41=MWTHG%2-RNCJ9
MHX=6:4#M&=@BHXG)";W?5-,AD<33;_L>@I8!;=]#E-&!U3.\)11C# XM,1BJ
M?^"=!V^$( :+P))LY+KU.JJ?I^U[$#J.;OL>HJI3P^*VK53:F&0I";2OJ2!5
M5['GXLE;U<%RR8,)_[1]CPN<!FW?0[38;]MWX0H=0P_9\ 2*80$444(Q4AG-
M54+#GK+M?K:V[T&:W:_M>XB8.[C5GO"9N.9UGQ8'JR.2MV,9>$M6B3)D@D05
M70BMNP%.M.W[F+>SH1(Z@-3[_"W/+W.=V?=R,5^;L_^>77Q^>;FZ(+=L>5U8
M7'UJ^F\M"3Q#+4KA*,@W=ZH.[3> EGYA1ACEO XIM"Z7.H#,#@VW U&R>%Z5
M=8#*EXO5Q=NR9?2,!^<4-P%*8:GV #HBOF[_BD85C\&RYHOK;Q'0X376!DF'
MB[D#C*QKDM\M%V5V<4:/N$24!J0@JE7,MD[Z%Q!$4#8&*9EO/?#DQM=WW6ER
M##X.%7$',?9;T+X.U#!G<V190G"91)#J1/_L,_BD=$FBB*);%V,^2$C7K2;-
M;I2#Q-[!S?*>U$$$U+D7KXB3\\6Z@6_;1'R6BR3:=9WPGFI2V]!3BMY"X09+
M9!H-;[W@[U&"IK5S&BC\GGG32OH=0.FW/,]+/*\ER.E+W7!]L1D:?\4.W9Y9
MF!1J<UX=&"K(IPU"T8%C10E$NE=;@^D)DJ8U=MK#J:4&.@#4AWQ^7FW[>?H7
M+O^3+^CW5YRDR .32H*5F&MAJ8,@C8<DA7..HXFY^<C>G=1,:Q.UAU$CN7>
MH->+99Y]FF]* N/WCTN<KT@ZI)G?<#:O _Q_R87^3G4;;2UU=TH#W:RQCN21
M@)YID"E()B3RW'PTUP#RIK6BVF-L+,T<45KWJ<9A_VA48?<JT]?'V49#7Q;+
MB]G_;GZ_:=#)]?>U:L/@.CPG(#&^GA2+X&K(5PBN35!"2]LZCKDG:=/6";='
MW!@:Z>"*JX):U83]YH9>G5E'9J$*!5"Y4H?4,7":63!96^.5=:GYL*6[-$S;
M#=P>.D?)N(, P=NON1J"\T\_%M><B=K.7!>',B9J6J"^Y,4:,$+9['+Q[6LU
M'R"CZ[$"QP0'CA5Y!ZCY?4ZW%$EEP\$6^W\LYHLKUNIMJ520B6Y&R+XN.4KT
M"QHO(!<C$O>1V33"0)PGZ>IZ'L$QN&JNE"X:?6\OU*J9GMG\DIC9GJ+%?&L-
M7O>%Y=6O?]&]3HJ<S7'Y?2W734;]@H@[7Y^[C:#.I/,HF"7KL4@!2BMR?SD+
MX(*O?4!,!M[:PAJ1G:XG)AP'[#X@T,7%NV5Q>[Q_R?-<TQ*R[GCFU12U1H+*
M48/7Y PQ9%X$SQWQ,PJ2[Y'2=;/7\2@\3O1=W*CT#-RP/!0/OD[XAU3JKB8O
M$[AB)7!)/\6ZQ=6T[KVX14#7?5S'X.5P,??:@G$UU/%K'>J(\Y2OACH>T7GQ
MY&<V:;@81GFC/HN=,S"O'4];1/9!>D!&#J-":2$8IR%D;J+#K$SS,>M/$M6N
M.&_G5VV*S[+@*I#1"4F[&B\V-9D5+13%A>!1VJA;!R/VI6W:7&);W.RNVVNH
MGPZ"73NY^>7[1_J(=1$V+T$:ER(DKUQ=<\,AJ") >,[0F&13;%WWL =9O53H
MM<3#ON. #U1.SWBK#&U+M96(& Q&(!8,J!H0=)'L0R-,<B6(G%SK5.0>9'5Z
MNQT*A7VA=J!>)F^.6'SY>DF?]>,5F*</BW+Q)UZ7[V-T5J M8(QA]!PH!D'3
MP\"30\L,=YB>M,/V_*Y.L7.H;A?C";J#*^KUY7(^JVT>Q,GKV5_U=ZLM)T(P
M$@69##$53^Z,)5O"<P],(8_<<QN:QPMV4S-MK<U8H&JLA0[P]"\D4<[S\OM-
M*6U9L2ZS(H6#7+".)G%U=F1=@H7>6;29K(36G>*/D#-MV<W8B&JEAPX@M9Z5
M]'EQGG[_\G6Y^+:>?7!U.J0./#I=%ZG5VU;) *Z&871PV2)&+K%U-?LCY$Q;
M93,VI%KIH0-([135C[!>DDGH@@R8UJ[NIX\0:D4'T]DGM#P5T7I0[--4]=)>
M,X4;>)AJ>@;;9E5 ]KEP3V^[]2A 92X!)4=@PD@55%3<MIXC\CA%G=KO!^I_
M7W@-5T8'T'H1X^67R_-:>7BS/HU^?YZOBM-NU*KM9/XLNQQ%REBG7190*03P
M(I&5B:)NP+'%N.:;'QK1WJEGT :NDRBX V _NALL<R]34 FB1@6JV 1>\P*B
M,*N*5"J&9WN:)]\G.M5].501O28LKS8@?-UL0,!YPLT&A/,?4Q./R%T.^?@F
M:<R#^6F5T=Q\[^IJE02>WQC^Y2)WPC$0F8Q#\CX,^9QT$Q650Q+&F1*;;U;<
M34Z[+.;UYH,Z_6QC NL00N3<@LPE@D)C 6V1P,@="H5EPV7K>5V/T3.Q3=<(
M$[OSE$=JH(,7[WU>O_+OD"[;&^TLJU^^W_R3=>K#L.0+$TA7>9UD;XT )W6=
M&&7(JQ=,>=8Z1;D_=;UD*H]%Q+U6VU'4TQGPKL9'R2A+*$2RM74OL$_@N!?@
M?<Q*L^R,;%WS>I^*:8$TEKX?@=4!PN\,/E<I,(_2)*> &16 G&8)KC:>9RZ"
MDLQ9+UNGM.]3T0]\#M'K(S Y0,@=P.36=?S#-=%2"J&T EZ7JZH0Z/5/TH/T
M5F%*9 CHUO'[ARGI);+:^-EJ(/8.P'-G2QW=QRE?;YY7/!94!I+S-6*G _CD
M!- A$*D*RXC68R$>(6=BZZ>!MA]?$'BPZ#M T:_DKR^^Y[R]3!_8^:-C<"RZ
M#.CJK$.LZY\-8Z -\T72#4UW=6,L/4G4Q!=3>T2U54,'N-INS+S1673%"#I,
M)D<.P=69J3(F8LE:B)$'9QS+9#BVOYL>)F;BR6NCW$P-Q-X!?AZ:3'EU*KY?
M\>2U8TD)1C>LJ.O(B*? Z71P57=%*6WIRFT,I7WHFG@Z6WM4-5=&!P!;;XOZ
M8W&1KU[Q*SX*D\HDX2 I<EI5$.2-:#2052;W(BD6>>L@Y2Y:)N[D;P^D)D+O
M #Q#-D2G4E+RD>0EJZ<2B@97T('1S'#DDF<QPGO7=('W>$W]H]OFS533:ZKN
M>BC&>:U$6RUGGSY?+,KEBOZI;K'">5K_P8U$UQ^XW(RP.R*#U^!;FR3V6G/?
M*-^WK@K\D<Y)O&"(,8(M2M0>6'('$\N@K?<HBO#MQ\;>IJ#9L)OUQ_X[5S'G
M].(;_?038;6&\J[^L)YF?I:8UDG7TL=8UZ^E5*?]UA$!WAMEM&0\M[;,AM(X
M;53B"(3L'(LSAG(Z>&P?Y>_5;+6^[]^3V_PN+^/:$HTLDFL<P'ME0&E'K+&@
M(!DR39UBUHG6F9JA-$X;P'@N\!VKG&;@F_S-K3U2BWFM#5^4M:3J^+-G?7\?
MI6"BMWA_J8SS+F=#-V%.'D30&90CAP.C3N!RR!YM#+[Y(I*V[_+KV1SG,:\_
M]'V5]]OR7ZN\WE]ZLP+RC'&?9$@9D YZ';[/(4AZ #1'LK13MD:W3C[N25I7
MK_ 0/-SK5AM!%1T\OC?9NIK]=#6X6,6@Z4)2D(VSH.KDQ^"E@F"]S;Y$3J[5
MB*BZ0TY73VHK)!TC\@[0<WVIGZ4LA(G20&UZ J7(O @6?9V\48R--I32.JIV
M_>731OD;(N,P<?X\D8M_X<5V=>[67GC3I!QY'$(FLJD&RV@<TXHI0WZ#LB!3
M'>[&O*\+$NJBQ.A-*L6QYJ6^;4VK-W7W6;[MWESG/-[A]W6CY\:[IOOC;7E-
MO@Z>_T_&Y9DS:&0=;&=*]:^-48"::2"')]-[;\@%:M]_>RBU71E@0U!S_W)\
M%H5U\:KNP>FKR_P''>V/?^;S;_E?B_G%Y]495RX++C0(E<G1=YP<?9T+)"NU
M,98I*UNG(@ZEM2MK;G18'JNL$P)E/7 ?_UR<%0PBHW$00JRY%XL02DWYN,"5
MS5D8V[KM92")79F-SP'!0U1S:L@C*.6SXHN0TG&0-=NGLM;@O)4@D25NN>/)
MMYZ@.)C(:8M(ID+?8/6<&/Y>+RZ79]87+=$25U$5NMEU@(#.DQ_(R>#(LL34
MNJ)R*(W35IY,A+[!RIEZQ-VCS'U<_)+?X2R]*/1MU^P%C#D)HR&QY(%N\[J!
M511@A16A%29>[N3&=HR\&_[=TY::-,#4<\C\A.ZSLY#H;G8\@C=U+H@W!9#5
M]3^>;FJ'!F5NG6?=E[9I5SI,<'\-4D8'^Q@>Y>N_YFF;.<[IU[\B_=477^H_
MG3&M;0ADBBJIZ]*)4%>,.P5"&Y)M$<ZD]@F[ PB==I?#<\&OB9HZN/!VL'<6
M"R,)L0!,>ZQ'2D*00@!G,5LOI4RV]93Y':1,N^NA(9Y:B+J#VVL'&U=UI=)[
MG;W4Q$UUH&M#*EV_!4H@%E%81J?C>8 SJ ./G2Z #I%\%SME=O!3ERYM6;(N
M):U# +->D^/K$X^N_N(3)B%];#X?YDFB]L/3*60-VLJ_UX*U-XOY)_J*+ZGV
M3]/_OUG@_#7&XU.G^WUPDU3H 3PT2FW6YH1:RGB^6-5IU%>PX\9HGJ, 4=M]
M%0MUT)<1P @B''G4(K0N?WF8DN/W*H>+W^?T69<_II4:9JPJN985T!VJ<DIT
MD08&NACTRAFFL?43]@ 9TR8G&^C]_L+DXT3=@;7\DKYR=K$]>9MA+S:*('F4
MP)W5H&K7GY/6@U0"B\!(A#;OP[Q'Q?18.4JQ=ULNCY-R=SC9SGO)/#C/9 91
M"Y^4CKPNC"P0E8S5-T2TK3MA'J)C6JP<J]M'H7* H#L RX=,YE8=YQJNYO&+
M4I+#6 !+RJ *+^01!@D^<)N-\CFYUO-,[Q'1$TP.T>O=N3='";D#E-R^9-<'
M1V==B ,-B$@')V@+3ND$Q:)!85AJ'X.^3\6TQ2JMGYXCI=P=3O[ +U>;'@1/
MWB@F(41+>(]1 ?*0Z:Z-6&TZ$YOW0>RBI2=S9;B.'X7,@0*?.IOZZZN7U:>\
MV@<3>%TF9"#ZQ.A%3H9NQ4+224P*B5Q(?2?5L"-1>NMC>]+ZH6I:-)%9=]?$
MF^OQ _2>&EMK\KEG 132O8F9WMBB-$>79!1VW#?ES: !?*.5H(W[L!PF[^Y@
M<]6A4WM<?RTEQSI;8-OLBI_R6<Z!*:OH:)E S!DZ9,A+!":$D*6@+:SU)I-!
M!/9T(QT(B4=AUE(_G8#OQ3R]Q*^SFLRJ0>NWX7SV::VQU1F/+CG+&*0DXF8Q
MGB^,TS]*5G)!1>;]"&C;35%/IG$[>#720 >9S!I5OQK LYNKZR%R07O'Z>(G
MXT""4HI#0&/ 2)]9<!*M:&T_#R*PI_>R#=K&TT\7Z<_]V*-+NO!LF0&67!TI
M+@1=TG4]@A=91.]#<LTKS?:B;-HJ[>D -T@C#9$V8EZTQ5BL1S^O>1;T6499
M[4B"Z>B$XB:"MJY.>^2QCC%(P'ST0=J48FB=\GF^Y&>6AM[MDH$A05K5TH*
M28),WHIB!6K9NN3B5)*?0_2^3_)SB*@[,+\?2-T$J5#D1!Z#UV3PU9:5$%6&
M@CRI*".ZV+HF]122GX,4^W3R<XB4N\/)-LJFZ<5TC%Q-[G6M),JUR)&<3BR1
M<>F2C:+U[OB32'X.TNT^R<\A@NX +/?S<C+8PAC/D+*M8UXX!Y]C@!QRQH+!
MT_/_-TQ^#M+KD\G/(4+N "4/I&PD.I?J@DG4-=Z>!7&@9 9IHV6%2=U^S<<I
M)#^/>7J.E')W.+F9Y,G%!"$D.#HYH$30-3B@P/&<7.T=2B-;M1TG/P?I>._D
MYP"!]Y7\5+YP9-H"DE-/XF"!>$!%!TK;('GP0=SI4#[EY.<0->U.?@Z167?7
MQ(_8D0RZ>*T8T(F@D^!*'4T622[,Q.AL",:/>TMTG/QL][ <)N_N8$/V6=[V
M_,G@9&)T=H0(9$U)E^NF&3H-16<E0S'8?&W&+EIZNF<.5/2CX#E0ZJ?0G'*U
M\V]1;LRQFW_(\]EBN9F+.9M_:A2@'?1=S8.WAW,Z;F!7"ANUC!R,C'7^1053
M3AQX1"5-)".)MZZ[?;[ ;@@>140Z)%+5L9E2@+<J@]!1%:<"-Z)UK.Y4 KM#
M]+Y/8'>(J#MXUQX(2V6;O<3,(?FZ'485">BS!R[JIJO"#'/C]BKT&=@=I-BG
M [M#I-P=3K8>!.<^>.<=(..:7F'#(=CH02+7)BHG96P]*. D KN#=+M/8'>(
MH#L R_V88[9>N2@TD,D7:ZLRTC'BN6X\2\9P(Y/^.P9V!^GUR<#N$"%W406S
MRV7@'!4F9R&SC*"B*.!TJGM:Z*EVN03+6B>,CO'%GS7(>\PSU$+>'5PO-TMU
M?C@1[_/7[5BHM^7=<D9^Q%<\?WCNL48Z6(Y8]2P%4"**.FB1@4D<C<HJ)--\
MG-*1-/=D#QT(G$<*KD;7XFFA]O?YO:G(P3F+7-3U"8I>BAB(6><5&.Y%BMY$
MIUN;6D<1W-/%^>QX/5)_'8#UM@!?XG+Y?3;_M V^!>E"-,J"-KZ..5.U%BIY
M8$[FF*(CZT6.^CS?IJ>G>'D;J#63?J\K4#Y\)MG&38GMZF(1_[/XNBZOQ7E:
MU%7)ZY\%7.7T]1SG33:W'ON530*A3?EN%0^]CHF]+74Q729R*E'O\SE>Y%37
M[JS6=*_INAJ]>1T_*XFIPD5='ESC9UEJ(,_7@!9&H[4^8ON!.4=1?+1SNPU@
MORWK[_BE?L=-*EZ0SN:?\OH[?_G^X^]LZ7CQ)R[3QI3G@AN7K:2+P2CRU[(&
MQ[*!DK+D*L>"S=?P-2-^8GOT^3![S^V>1/T=F 0;RNDOKT-<KG"F):O=SKG4
M=7X)R.@.582"U58+*5NO$KA%P+3XFP@$=U>^'ZR1#N!TN.!^L#U/[^B9O%'2
M8J5.G!L+QLE4QV#6@TVFMM9)%&5E]JSUHI\Q^)@6W$? ZNY=.;6.IZXN6S/W
M7_/9Q>JJ6,KY4J)5(&TAXDV1$ ()U\1L8S"N%"N?LF0?_.2)[\/)%;UH)?4.
MKL;WY#<L9Y$,F0_5'UAS\O[#?VV9"24DK!'?NO64Q)(CH- *H@O$AF=!R=9;
M5!XE:-I(3S?(:Z^\J2^O=WE9%LLO=2?O#U:V?* )60E5C15!KX*4'H*G$V6%
M+<Q;%=7=#,V.>^R1+YDVKM,-L)KJ8FI,O=I^Y[TKVCHZ IJ.@S#>@M)U,[ -
M"80O0B4NF0VX%Z!V?<.T'>M]H:F)%CIX*#^0 M?2^_7_7-9A^"3:Q7SMZ5?+
M%0/WLJ  #$F"$ISN6EOK,0*WY.1;WGY.]:,$3?Q0=N&RMM-8!_"[P\/V5#*?
MG5&>J!8N$.G( 5TB&5E5!!=6Z-(:=@\2,K%'T$[1B]92[P Z1/Z7Q7S]E&^O
MWN*U)N^: 5V_=)F7$"$8KL%CT5S0?1ZQ^2SQNT1,"YD&BKU;2W>4E#N R9-7
M]:Z;^D<>,@NE.!D#=%$KN6V_(+\7#$/C%#*6FL_A.Y[JB4W_/I[*Y]5]#VBO
M!_7WU>HRIU>7R]G\$WD]L\7&2ET]+(XS30>WV,(AE%*SX1+)^?&ESIX307/K
M.6]OY TFL_/H7&,DW;/YQE5K!\A]<;[^.UN/ZAX[O_Y5?YO/!'E0,G(#C!>Z
M#FSPX(7UH!56A\U;[UH7<>U'6><QO''Q.8+RNJBN/EBL?RSF;]=U*1N+[$<E
MTNHW^G=)4&=)>5Z"-R!X<629I0R^CD066@<5"B8CNC$JGN2F\SCCR)=S'R Y
M[0.S_N6_\^KB^G'C9\60D2=8 5ZGD:Z77V,Q#"(3/AI;I_:T'MW9DO[.PZ6=
M'HIC@="!*?/KEZ_GB^\Y?\C+;[.8'Q8%'?YOQ&7>,+SZ6*M%;_YY+<#Z8W'Q
M/_GB?8Z+3_/9_])]D%W.41KR?FH"3#EIZOXX"25K[[!8$WCKDJ'1F-GK>.B?
M]'CT 9&?^:QL[H[7B^7V1_7O\3/-A7%).,BV.D5"9'!H$2)/(B&JY)H/N7]>
M#O<Z5>:?4_7<8)HZ:WQ?[#^4LG7//N2+B_.<?I]OP@IGVHE<HI/ +?&H> TE
M"$U/K].:Q9*537?,K\<*K09]]UXHMC\9BI]#3Z<$PY>X^GPF%884,8&Q-=N0
M3 *,/H"LRP=9%,DIU1R$]9OW@J#[NT-PL(YZG20UL*UH_=<O:]G'\_53W?_.
M*1JJGN"\CXZJZ"4OV@0H(5O"/D:Z$D4 Z[66FF%)NG41^\_2424L%B4X AKM
M02GZ)4A=(":[7D/$\]TJLG\ZJIX=L^-U5 U1?P?NX^U&"Z.RL-;1\Z.2!N65
M \^D@J11>9$12_,1.3]E1]4@$#S:435$(QW :90:T\Q"*%P@2#*32 :,#K:W
M&1*==N9RXJKY,+B?O:-J$*R>HZ-JB(Z[\,%NEBQ'1F<=R7Y702$HZPLX:1E(
M14X"N0R%,[:_C_5S=U0-4O2C'55#I'X*5^/3'JD-K%A9+1SE3>TA8W5FO@7-
M9&'<RIC[27F_Z6-\61]O^C/K_I31?B^5_[;ZT!\_XS;5O[H./[]?G)^_7BSK
MOW0FHBS%" ,N\4+*2?2>\2) R!R"R/2D^=;C@)Z7P\Y?@L;X;75\Q@?3*1^U
MW>4S;R\O5A<X3[/YIS\N-^W+J)5Q@H'0A=1GK0#,BE[<4-"(H)0/W922#.#K
M1(_5,^!Z_!JMXT!V\,'[NJG\O<#E1:_'[ZIZS85(1K&7=:.-!<55AF!\@BB]
MEL*0)2U;SZ"=N,2QO_K>G^*H'0*HTRZ'W"V+7__*RSBCOW[&DZ8+)W)@J2XA
MY"4 UAF)*9LB)$<A2_/99R/R<Z(UQ#_% 3L,5,./F-\<L7G^5#,B'WNV(4E3
M)<\N+@F'+^;IU[^^SI;K#UV=B9)SG0D!4J0Z"D=&P,1)3I;)6#B=&=UZ>LQS
M\G>B9<L_Q3EL [ICSV6O1_*^Q6U-*C*7!,F1+)2*$9QQ'+3SS A$IO6SIU:>
MRZWKKS3ZISB"QX'L2+?NU_EQA^]._59K_=V0S?IZ6AL--;J\E903+AE&OB_#
MG&K)&0-4-3>7.->^F*+SDT51T[)PHE[><7'*$T+-:7MU6X&\2&E=08[G/TJ&
M;M0!)66S#9GT)FMNVQ= J0)P9UG01AK5?/C-J R=J%\W<>B_.52ZJ#H8[:G^
M=YY]^EQ[.NB<XZ>\#AB](EOV-<Z6_XWGE_F,.S(G$#58J4E6C+Q;IVP$NGA*
MY@(-FJ'=#),P<J(A__9X;O)X30"NR2/_8TEL&Z5]6EHY2"7(:87D P.5/1G4
M00DP]-!GZW3PAD]U%/=EXD0-Q9,[AJ. :E(K<BQ)7<=PGY:5R"44%SR8Y'(=
MH1S(XB:/%B/+,FGA,.TW>GA2-D[4L#RY(S@2L'[*0[@S@/NT[*RQ64<26UFW
M<1J4$*1@P(,QT25=79"I#N7A;)UH-N'D#NDS >^G/+2#3/WD0BC!6(BFCF1B
M=8:9M87DQF6V*3#N]YNR?@I^9'\YAI,[F*.!ZZ13#7O)ZW:T> _I">4#)@6(
M4=1 ,KD V40HG*O@I-3I[K3Z28[F0+9.] 6=,B4Q.;H:/I/3SCEX\>G3<ET4
M,)M?+&?SU2Q^J\)XQJD'3U$PQ0R$05+I9")"\-SZA%!$#8]X(R#P)"!%R9.-
M(2GQSX[9ASNG#-.\1%F K<NZ)6KPQDEP"JTL@?.@6@_=^V<BPE#,CC<188CZ
M.VBGN=TH3=:CY=8&L"(B$4^_A$B6</0,M9,VI-*Z[^6GG(@P" 2/3D08HI$.
MX'2XX!YIHBX^D ^6&7!=(PXV* B.D31"45F(K$DB_TQ$&#0181"LGF,BPA =
M=U&;<+,W/VLLL;  :.IDQ^@<V?K9@\U)D?5/%X$9$.3YN2<B#%+THQ,1ADC]
M%*[&IUUC693#4+OP'?VBG&?@4RWRQN""RD5RUGS8UM%4_RP3$8YYTY]9]Z>,
M]OM5H+]?><V;P(I2GLN8):D@TP7B4@!GD@6F?/ QQ\!L-T7\3S'3^?W>&)6-
MBQW;0*27LQ*>%D38(8@;<<G;@N!G,GI?UNMEHZ^59J& URY"-,P@_4S2C3;&
M81F%FQ,MHFIX6J8'R4]147]5HK+Z?;X9U;Z>ZG[G$O%2B/7:$%[J9@2=.1FJ
MA9052N;!:Z%EZZ&PS\'7B99!]?'D- ?.SS+?^OH?XPVY/N.LZT>_?Y*YU_M+
MI(^,3TDZ&9,5%"\C*)-J)W^TD# +FTNQ1;1N4^\EX[/7'I#MSD+ZW=MR=]/'
MFM*-E^AYELDJ"5(G7M=H1G \6."1*:X"IJ)XZU=C#$9..A,T!,N[,T%3P:(#
MC^3W.=U:^7JC_)LMB^O0L9(:N?"!;$1Z>A5G$KRD-XZS&@C)JH1L&B/\$7)Z
MR1A-!I;%.)KK%X3;.'+0"4NV&@HJ"XH,/PC99C"&<2Y,1N];)X4>)6A:(#93
M^WYP.D ''0"J'K&WY0.>YZL4 I9BG.4<G'*B#I/PX)+V(*Q*25J;.6M=JW&/
MB"Z!<XB"%RVEW0%<WI,FB(#/+^;I5?Z6SQ=?JX2V*XVV+!6K/*LC/G(R&E2I
MNXPTTZ!#JAE6GX1J'238@ZQI V7C0:JU1KH(9OV6YWF)Y\33B_1E-I]5&_9B
M]BW?9BM;%X+7%D3=G*6XJ%U2B0%/05@G"FK=>I']7H1-&TX:#VKMM=(%V#[D
M\_--,?._</F?7+<FW^9(LN+69J>5AEPG&TMM*>"@A6?T<\91-Q^Z_P1-TU:T
MCP>QIKKH EUMG* ?H5YT.CM7Q1GK%%>A&;BB-(1@1!(RVGM#.)YG_>[^+/12
M_-"+>SHE0CHP*;><Y?0PX]OC?^:LTR4S =PYDK"@T^\</2MD):>HA8VF>1!Q
M/\JF]54F!<_=*MWVFNRW"V@;=B4M77PG.XAXC.O<QQ$)GJ<^LDG.9A#=C=(P
MV^]\5[_SXXWOO Y.BV*+S+*NA')D,TH1P&544)Q@W >N<VSO,CY.4[M4RJYO
M^N7[K3_9K!CB$:-6#)A.'A1;5^EX>D="2=JIH .V=FD.(G3:2Z\IGG8G.\92
M7 >/[GZLK4.E23%A/??5JF%U-36#H#6]#4$XC(YELKR?Z6S>IZZ75,=H4+D7
M[1E%;YTA\LJ1C,HE8T(UI8D-0R9#D%(!1PPQ6O( ;>MTQGTJ^KSICM7W([ Z
M0/A3-Y^\S*LZK&4;(A"Q,,9+!*Z$J-+(X$M!,!FU-MG72JF].D]N?6P_.#A$
M08LFTNKLFKAQ(-8G0$891?$:3!(9E!6,6 D&=!1<U-VBO+1V$1\AIY<PQ\1/
MTV#-] NR[<$3B"FAHB-21VRK4NBBY5@@F<2-LDYF;#T'X%&"^KF9CE+[?G Z
M0 =3OT[K=._;\MMBD5;;,$T=,+:>\;Z)I&^OXN")*^,Y&%,L*&0U<V(MI! D
MO4R8C=MS?-V>W]@E<@[1\&)L<4^-H=_GWTBBB^7W=Y?+^+E&UNZRMHVN7=45
M\!!+5A;K$&5>&T%K1;BSY ''S#UQC7X_(VCH-T_[[(V$J5'%W^^#]R,L'(O@
MCGD%G@!"DK-D;-KB(*#,(9(0Z5Y_GC=O6!IIO*:-7NRKPW34+^9>?%E<UBEC
MY<;/SKABDA7I@3EG0*DB:T*BSHJ/5@63;+:M6_8&D-?E,WH@+O8TZH]54@?X
M6U_;[W/,LV_U;*[^R!<O+Y=5XF<%"T:7,D0>ZIPZF^HF'0:B1HY#YD&;UN7<
MNZGI\D%M@ZY&*NBBSN-%C.LS\0Z_5UZV?)!Y\,=B'K=,18,\>1*35+5*((@$
M2"\!^&AL+$FRJ%OC:@^RIGU(1P58:Z5TVYJ8/]5"K-F\+)9?UI_V!RXWQ7G'
M-!P^_:EMV@@'4M\H*[W]VO>Y4E.+SJZRA_2*%5$B0M*1K#2+%H(H'D2TSHM"
M3]Q=/[Q!O=_#M#0<X7CG&W[_(>U?OF__<&.DIB#I[<8,7/A$!\)X0(Z&3ITO
MG&O!$V^^<WXXF1-G_EI@YY&!BZ,HJP.CZ[IF])?+%=WPJ]66F=4Z7LA2+E;S
M!*PP7<<)67KTZPP&)CAG(HLLFQ^\QPCJ);L\$ASNPJ^9;GH VH;V;>"'19F3
MUAI2KA-P$.EYYQFK2<$#8UG:U+IH]A8!$P.IG6+OE6L?*N6I ZJWDZ"NF.11
M!!#('+FNH18\EKJI&%F,/GO&TE/64F\IXR-TLSM;/$10$ZIX50E?S%>+\UE:
M"WSM2JSAKC/167R!Q'.-S-;]2H5%B,)[:T4NO.Q5:DA?<>,:6&W1L$;"[F_O
M)2<\[H/22/K=X6=[E$S2.7$9@=4R?Y4, BKR&IW4'#5JS:T;!4%3OB6M=/HH
M1 X0< >FQMNON3JK\T]7S^KVKK3$.#.:I.%T;542=2XF=X!>(+<Y>.E;&QT[
M2.D),H?H^&[8L(' .\#-(Y?PC^B7X=E$0^S88A$4HZ>7KEX-Q>>LO> %VT_V
MW(.N7I)OS^09M=94!^C[X[*>F9J^K$Q5$5V=IC-O12H")<C:FT-2HW.4ZM8>
M:XQ0-A3F6O>[[J:F"R.ZH>87HZBA T!MZ5X70J3U&L6K#7,?%V\6\T]O9M]R
M>K%:96(M,)3&6 5%J3J1-GIP$06(%+SB+(<L1[K5]B%O8BM];,B-I:C328Z\
MGLUQ'F=X?N-GX7O81D=66\>Y9>)DT#>.E%0YG.O1$RZ<L\1=I)N.UZT'MD85
MDH4BM"W*24[7X$^=<(G22LN &5<C<)E,DR002"R*H4@RZ'\2+BVPTR;ALK^R
MNHM@K/UU&[WU7D4PJKI)BA7P(AJ03O!@1:$+?J_3-EX$K+.4R@"%/QT!&R+]
M[O"S==ZSTXX+M) C+Z"B=N""LK66,2&7#'/Z6T7 !NETGPC8$ %W8/KO"L@D
M'[DV9)8R9);8L&2EACI1PF86LRK1Y-9M_:<3 1NDXSTC8$,$WM/E\NOY[ M9
MI^NZZ2TKC&LDSX-#6;/"V7J/MR6-H]9%&2'C7K5R0^Z8^V1,XPHVQTUK@7=P
MY[Q<+.GIQHO\QV*^/05786!K67**@]-9UQQE!$1/+#'-,&84H;DWL9.8:>*D
MH]T[;83> 7H>+XE Z3AJZ4$:H2H+'-#8 L89D9F(+HGF4UB.KD/J+&T\W&AN
MKYL>@':K"J.$F)SWA4Y)(4.1SAU@<0Q2R2%[+IW4(P4Z^J]#&J381^N0ADAY
MZCJD_V?VZ?,[TD/=ZT!7]@5]]NK#]U6]KZ]*;I2WS,5:E5X35[:.*J^+J= Z
M&P5S3N@[1O2.VJ0GOZJ+",\A.ER,)M#)X9'QV_=7EQ??W_[ZKRORB8Q4E 1=
M;U4E@@9Z: 58U$ZPH@33^]6JW?_L+A(?1P/@.)%-K?$[TUED+(&3!V<CP51Q
MDH)/A2CW)=M8%Q7$L0H3Q\O>M]'SX8+JQRQX/,G'L43OG00F2^T69@50Q @\
MRR)%UD7KYCO>?]+:CR.LT=::Z@!][_.W/+_,KTFXZR<2X\6_9Q>?7UZN+A9?
MZBR#>'Y95\C6)##]-WW$O\ZB5THG1SPQ7D-+@5Y-;S5X96UB*ADO6_M$!Y#9
MA0G3$"OWVK''55P'V-RL2%E/;WDQOQZS\6%QGLZB2B76)9(EUD)3%P1X5C0$
M(^ATH\_9MP_L[**F"UMI/*0U4D,'@/IMN5BMWBT7979QEK4B=Q(U%!XSJ"P#
MN,0-".&<=L8*U[PD]\;7=V%VC0>90P5].$;JHME&#^(C2W1(*%FX:B\$F0(Y
MC"&!%]J!T$)'7TQPMG5]QJ,$3;O\XQD>N5;*F-J7>Y23%^G_HV>[_N#U8OE^
M<3FO#_<9U^3'>"W)<?&UK4K0O9J] ,,B/>,Z&!?VB_8,_^Z]8*5/#E;/H8D>
MGKG'ES.=":N%\(SLON*J@ZP\O=I9 ]W27&(F_ZCY$J,G2-H+;^;D\#:&0CK
MU^[-3&<I:HQ!.9"U#EGI7">T> M9)Q&S-&ADZS79NZG9"U7V9%'52 T= .I5
MIF^.,]S.$R-Q_>_F]W1@8ESF]1R8?'$FA?+:) .)908JH <TBG@C:<4BD8>4
M&J-K3]+V@IH[6:B-H: .<'==.W4ULO.,WG<;>?80L-!-[+BB.YEY2%XP+PN+
MC#4?]W:7B+VPY$\62\<)O0,/\>9AH-^?YZN3<.-@U*FO.KI0M_>2<%0R"ERT
M&;*(REO%A9>M@;0/7?L%1=G)@JNY;J;V&Z\ZM' Y)WFM?LDDL/S[G#X]KRX^
MXE^W;N8[?":?DY2E@+,.0<GDP/-:U:<%#][YS.6=)0B[AH@?3L1^@#N],/RS
M*J>#IW(S+OW-8K6J&8=?_\_E[.+[O_+%YT6J [$W+O/J3)K@HPS5<U%TLC0:
M<)GL3BPN:!4C3[&U9[D78?NA\'1#].VUT^^VQ:TP;\BP[K&<Q]GYYJ MKK+!
MO_[R^\=7+RX652QA?31G:S%=X%_YF-V,;0EHV>$YADS&;O@4*LO:.PQT _(Z
MB%^#%QF!;D?+423KFAM*/35\.NTP:\XANKIY(ADZDR+4_FJA0S(",S9G_Z=I
M^!R"G18-GT.4U5-/S8_V-&E1,V<<%%\Y( ,$B"D-Q7@A53%(C.T#M[])P^<@
MA3_=\#E$^MWA9UNDIZ7/);@ 7HNZ*D>3LR[I],5BHI/>)L''&9K7:</G()WN
MT_ Y1, =. :[^@\#HE6,&_#.$!NF'ITBZ&XN0JN 3DC>>D_'Z31\#M+QG@V?
M0P3> 6YV]X])G22SRH!P+&_2^DZB )84*HR6%:X;(^>XIKWG;?H\!CMMA-X!
M>A[O'](LVE#7N3EM:[[>1O">(;CDC5.)*Y;[&Q[>5=/>(89/>]WT +1;'0HH
MF Q2>RB2U>W*R.B.10U&V[I,WC(3_K9->X,4^VC3WA I3QV?O]UZ4FW!X$VD
MRU@G4#XPP!#J0^QX,,%IR>[@X]2&AP_2S>X>G2&"ZN<6>#R JXDVFQP"RMKW
MCM("*I>AA"2LY2:VWU'_<_;H'/7XM-;4U!?,,3DF)8DWU :T8G3*$K'HM6>@
M(LL\)1F*D7M=1Z,G "?-O R"0ZO\WQ#=3(W!?;+JF\K9G,YD3M8B\12#(4_"
M,0$AU7E\==TIJJ*L<7N!;LBWGD +SL$H&TWZ72Q+?#A9^3[C^>Q_<_J-;(Z:
MJWH[?S5;?5VL\/Q,*6FT*0**K\,A#+FK7A0R.X/PGK.4"FO=N#.4QA/H[CD$
MC<^BLN&@]!M0SO.GNCWR8_O(9FV JZUOUP5K/%LG:FY>HRQDEA0-SBD&27-F
MG&,N[;?VXY#8YEUB3J #Z!BLM5%"!R[$ZYIK_S3?[!V--_>;7AV8C?E0^W0-
MUUP+)X#'3+:!B0)<I%\$7=]*>,W1M*YS'D#>"30''8.XL135S\7VJM:&_ @N
M5[;>+BMCFUW>9^@2XXD\>Y45V1">UQFF0H,P:&RV)09L'3Y]@J03Z \Z!G(M
M%=(/S*X<H>V-_2J'BS,FF/),D)3(O0$56(00?(;:D2+1:B:QM?'V !DGT!AT
M#)R.%7P'K^45"YO"QBTC?RSFBRMSH':;,!.$4MY!M-R!$M*31:DY9"N9C8H9
M=7<B4C,P/4;7"?0"M4!7,]5,?V.MW>S;-;1UILIL?DGL;"U0NJ"OXCOU[WVL
M!9-U=?QFKMSY6M(;P3S<0ZRDR$%&"5EAKN9J@. 3R<8A"\+8PN6=FV]'6&1<
M.D^@^>C@0$I'&N[BBATLC5__NE@B86 VQ^7WM3(>EL^90>YT'7O/?2(565ZG
M[*$!)IE.9"M[U7Q<V8CLG$+3U'$W>A](.)VM49N56$W70MW^R)'V/CU"]]AU
M_E9QST4N$'DA1\853T @*S0EQ10&941JW1K44YT_9T65J(A]49\$X]QZN@,D
M)JT/WD5^=YC+/W7^!V&G19W_$&5U5Z>]+L9)9'T89R*(8@1QD!UXD0Q$EU$H
M&:V\V_KYMZ[S'Z3PI^O\ATB_._QL"WV\9\K)NL5!K*W9$(".'#$2C91)H+)W
M_96?N\Y_D$[WJ?,?(N .W(5=9>>HC?6*1^!&2*CI9?!8%,2DR;BSFB?7>N+/
MZ=3Y#]+QGG7^0P3> 6YVEYS[DIFV68'VV8"*=7'M.E 4F99,$).J]1CA4ZKS
M/P8[;83> 7H>+SE.5CF>&(. C)CA"<')I( %H[U60AK;?'?TSU7G?XCATUXW
M/0#M=I4S-[Y8>N>]=(KN6,O!<^*E)(8FB*PBCN2L]E_G/TBQC]?Y#Y#RU"60
M3^^2R=8J$XB'I'2M1PD9@HJJEL=S)HN4(M[)FO\,RWD&Z7#8<IXA IT<'O<W
MS9B F2-&8$;1.?'%0:WII6.#=$*$"SP\&28\@>4\AP/@.)'U\V8\'IB/.:$S
M2H(CTPH4<QXP9K+>@PIDRG$?R]AQSY^C*^0H4Z6UIOI!WSH!GV87=(V^2/3_
MQ-+'Q9O%_-.;V;><-@'_,Q:$*U%82%+4&?R9? D3)$&G,)F"X[)YS?0 \KIX
MSQIBXV'P-5?4Z:3+WN5EI)\LRG*SM"9\_Y07GY;X]?,LXOD:ZNO>AH;IM&%?
M.5*Z[0B^QT[')<&TC^B@E+H[04=#T,X.N#$BE!1%\<WWVG:4CG.&&U6XAZ15
MI,=$6B#W)50KD^D@HG.Y>2/W3Y..&X*=)F.W!BAKXG3*M>O\VXV#OMEI:Z4J
MP160P1$3==1&</2/H?;%2^ZLTWOUC#R13]E)P.DEY0:I?=%:!U,#:2.)FRQL
M':Z87;!8UV+*0$Z2*AZ<S&0B:*62=TG:M-=@I:> M(N Z=(LC12[:"WEB:'R
MZ^5R\35O7>B4C"RY%E@YI<E0%>0]U['",J/D&466?*]TW!/HN/F=$P*BC?H6
M#60Y,09>K&97HS5X$#H[>IW)+2&JG;-U4E1EG>N .O*D]^K>>0(!/[YQNMQ9
M>_T?*,>IM?\E+XGYJ\ IC\QHX>J.6UYW7-NZU=P9*-;%4C!;C"V&?-[^UFD"
M2B.AX'!Y=A 8>KF85Z]S4[K[?K;ZSR_?/]*_NGXH19361)'(8'=U!#A3=*45
M!)Z58UQP)_>#QJ"<^TYR3B]?>HA-VEHO/4*L,K(]=$'9:)+0]$P6#HH;"8X9
M!VBY(S8PA]1^->].<J9U>YJI_"DH'2C_#J#TX]J^Q]3V^F516R6U &T<VY2L
M8"W$RZR0E!1/HK0&U)-$=0:K0]5_;T]A2UUT *X'SM\O>1X_?\'E?]:'D''.
M=48&Z&M59RZU098;,#&BU,IYIEI7$#U%T^EEYAH_BH=KJ$O$77&S/9].96.5
M2<2*H?.9 P=?9R"ZS P&)#EBZ]:XIVCJ[#(["@%/PNL(=70 KP]XGE?O-]FD
M=\M%NHP7-4FYO9U+2,IJC5!=DEJC+ND@^@+)!X?"%FE2Z[E$CQ+4&[".T?W=
M/$8S1?2 JGU2X%8GYXEV4 E+%9D -%H!#]HI3()>_^;@:E7(,M[\JV=^+IMK
MJ@/TW3NGV[0Y?LK\+,7HZ2A:D,+6:M/LP2<ZJ"@B$ZH4.DNMRZ<>HZ>OC.SQ
MVG_JN3Q4%9W7IMP0W,>Z%Q9K]4W+2I0]OV"DY6][\S1VE4G(3JG@/-@LZI!;
M3EA$8T $X3,+0N7F$WK&JC*YO5#O;=D4;-6!"5>7^^)'*T].FZM>)SHRC#$0
M,B H[\D/3TY!3IJ;G)5B=^?!'\W_(73V=:L=A)Z[-]GHZNJN;W?M*[G,LQ+1
M@BF\VK4Y02"F '766)0@'EH4!_38]SV^QI]N_!XB_NX M/6*; D^%>E FO6D
M.$&G+HD,:#/WVJBH]EO<];,T?@_2Z3Z-WT,$W(%YOKL/&;.P28+/V8(2=:BS
M8@@"G<@R%)5]Z\VEI]/X/4C'>S=^[R_P#G"SNP?9<"5T%@RT1G)[BR_@'6:0
M+!7A6=!,_9T7O!V#G39"[P ]C_>@$N5*9YL@L^S(%57DA=+A *>8+K(PY9H/
MG>BX\?O9+)_VRND!:;?:&;4V66 AXD7@=3%5@2"+ LYM#M%&Z5WKN^ED.K\'
M*?;1SN\A4IZZM??-[-/GB]JG>O4,>Z^]XQP<$Y$N4DX/<@@D!1^3$,$4*>^D
MC'?T]=[YX"Z<\$/TLV@DK$G7T>S9DRYY+M)*79=.9#H"='6ZX!A$4T0.A']Z
MGO=2?ILF_V?J\3X8#FT%.O5-\%#'.HD@,A5 Y.H<HB"_D.QT"-X5&ZV(*IG]
M\'!8D__82X2.!L!Q(NO'//@1G:S&U;7%-?]4+?<?R9<Z\"!Q&2&*FM'SDFSW
M$@R(Z.C_!#-,C[0@=C\"IP75\QNJHRFO V1N6\:3\LD4K];%!:",IM<5K089
M0TH^L417:6/(]=BVWU"UBZ/EW&OZ\_5LCB0?I']U=;&\7)OV?^"RAIN^Y2.R
MGGM];I-DYW .CLQQKI^QZV_]_<>WOIJMXOFB6C;7"2M)UDKV3(-+U9C1R0!R
M':$4P;3CPN/=VW^'-;#?]QT=H</5Y_J_NL_O&YZO_;QY^O"9!/XQ+[_\6.U'
MKE\J3D<O0#HD X#5FA5;MTQJ*SU++LO8O&IQ;^JFN8C& L:]D-XX6NIB^>=[
M(GTYB_365PZ)K3N,GGD=DLI8Z/&/]/@71H+SY$G:XI3.Y%I&TSK)\!1-TSAF
MSX6VIAHYI6?P^F=OP_GLT_HKCEGP,/0K1GL<]^;K&=_)D%GT=7IQ-(GN*<W)
MI-<I0%0V<1<%0[=?".UYWLFW%Y_S\N7BRY?9YI[=^"6R8/*:')%"9(-*BIB0
MQ9);BZQP&U1RK5V]!PGI__4;HNY[R="C93]UU&@=]R(Q7-XZ@M=M@$X(QGEQ
MX#DY)4HK\DSH @?)M&8AT('$_6S&Q[]G6F>M@187XXBT7W1<C0'7T<7$,M2!
MW^1VHH1 ?B@4M(*5K$S1_$A\3)EY:J[/_7!R@'![B/C$6/?!KM[A]WJ R#JC
MGRPOB8X9AMGY[&*6K^+J7A<D2RU#JN.YR#*K8UE+ BT$&C(#D?/6#MO^U'4)
MM4,@<3=2-(Y^.D#>AQSI14]UE>Q5)[ OR;M@P2=-AU*AI4-I<ETDP#$*&UUH
M7]I]AX@)7;%1<72<M*?/HUY7L+W)N+I:$7M=QD:HCUJ1=^J*(@=2</I=),Y0
M%&*R%,_W6X3ZV+=,D^<8#QEMQ=I%[.>N3?@C6"^$(VSG K;.OU4Q%/"%W >9
MO7".R:+N)MF;>U9O!B7,1DO#M[.;VTJ]@Q?IP6-V%GUV0<?ZCN9<DS1U2Y=(
MP P*$XK7>;_A9\/:!>\3TI>[=:"2[S<''BGQ/IVM]_DK?M\<K]HW=Q:4D%)E
M!IIN8U!UZ$!05D"4!H/D03KK]GJ@]OJZOBZ8XY RDI"[>*X>9.O59?Y]_D?^
MZ^+CG_G\6_X7_9W/JS-ZB1T69>K8.;J?,SFM'C&#MEQYKIA@;H0A:WM2-VT%
MR#/>3,?KIM=7;LW9AUKJD,C%_/AYMDS_DW%Y)G,T7C$'R5H&2AH/GNGJ,P@3
M:^HGQ]9;'H;0-^VDAN=&WI'ZZ1I[KQ>7RXN:''P]*Q>?U[QI>O,38CU7LE8(
M8H" SD)QB6Q2QB.RUHG:(?3MA3W]LV#O2/UTC+T7A;[C!U<N*\SHB0UO/=WF
M=1>=#PI<UII9*XHV>_6J-D#=;<KVPIOY.?!VA$[&+Q#8_D'])> J_]__U_\/
M4$L! A0#%     @ *HI!6Y+2IG+7$ $ HOP4 !$              ( !
M '=P<G0M,C R-3 V,S N:'1M4$L! A0#%     @ *HI!6]*0U@0C$@  %]@
M !$              ( !!A$! '=P<G0M,C R-3 V,S N>'-D4$L! A0#%
M  @ *HI!6ZF5 H%,+P  TN\! !4              ( !6",! '=P<G0M,C R
M-3 V,S!?8V%L+GAM;%!+ 0(4 Q0    ( "J*05O.KESXS@L  *%*   4
M          "  ==2 0!W<')T+3(P,C4P-C,P7V0R+FAT;5!+ 0(4 Q0    (
M "J*05N.IW_7YET  %M6!  5              "  ==> 0!W<')T+3(P,C4P
M-C,P7V1E9BYX;6Q02P$"% ,4    "  JBD%;V0ZRB(O+   *) @ %0
M        @ 'PO $ =W!R="TR,#(U,#8S,%]L86(N>&UL4$L! A0#%     @
M*HI!6P':8OSBD@  F<@& !4              ( !KH@" '=P<G0M,C R-3 V
@,S!?<')E+GAM;%!+!08     !P ' ,P!  ##&P,    !

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>89
<FILENAME>wprt-20250630_d2_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:currency="http://xbrl.sec.gov/currency/2025"
  xmlns:dei="http://xbrl.sec.gov/dei/2025"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:srt="http://fasb.org/srt/2025"
  xmlns:us-gaap="http://fasb.org/us-gaap/2025"
  xmlns:wprt="http://www.westport.com/20250630"
  xmlns:xbrldi="http://xbrl.org/2006/xbrldi"
  xmlns:xlink="http://www.w3.org/1999/xlink"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <link:schemaRef xlink:href="wprt-20250630.xsd" xlink:type="simple"/>
    <context id="c-1">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-2">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
        </entity>
        <period>
            <instant>2025-06-30</instant>
        </period>
    </context>
    <context id="c-3">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-4">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-5">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-6">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-7">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-8">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">wprt:EquitySecuritiesOtherOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-9">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-10">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-11">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-12">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-13">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-14">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">wprt:EquitySecuritiesOtherOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-15">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-16">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-17">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-06-30</instant>
        </period>
    </context>
    <context id="c-18">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">wprt:EquitySecuritiesOtherOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-06-30</instant>
        </period>
    </context>
    <context id="c-19">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-06-30</instant>
        </period>
    </context>
    <context id="c-20">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-06-30</instant>
        </period>
    </context>
    <context id="c-21">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-06-30</instant>
        </period>
    </context>
    <context id="c-22">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
        </entity>
        <period>
            <instant>2024-06-30</instant>
        </period>
    </context>
    <context id="c-23">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-24">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">wprt:EquitySecuritiesOtherOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-25">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-26">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-27">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-28">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-29">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-30">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">wprt:EquitySecuritiesOtherOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-32">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-33">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c-34">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">wprt:EquitySecuritiesOtherOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c-35">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c-36">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c-37">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c-38">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c-39">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-40">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">wprt:EquitySecuritiesOtherOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-41">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-42">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-43">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-06-30</instant>
        </period>
    </context>
    <context id="c-44">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">wprt:EquitySecuritiesOtherOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-06-30</instant>
        </period>
    </context>
    <context id="c-45">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-06-30</instant>
        </period>
    </context>
    <context id="c-46">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-06-30</instant>
        </period>
    </context>
    <context id="c-47">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-06-30</instant>
        </period>
    </context>
    <context id="c-48">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-49">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">wprt:EquitySecuritiesOtherOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-50">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-51">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-52">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-53">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-54">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">wprt:EquitySecuritiesOtherOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-55">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-56">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-57">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">wprt:CespiraJointVentureMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-06-30</instant>
        </period>
    </context>
    <context id="c-58">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:DiscontinuedOperationsHeldforsaleMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-06-30</instant>
        </period>
    </context>
    <context id="c-59">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-06-30</instant>
        </period>
    </context>
    <context id="c-60">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
        </entity>
        <period>
            <startDate>2024-09-13</startDate>
            <endDate>2024-09-13</endDate>
        </period>
    </context>
    <context id="c-61">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:DiscontinuedOperationsDisposedOfBySaleMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">wprt:LightDutyMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-07-29</instant>
        </period>
    </context>
    <context id="c-62">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:CAD</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-06-30</instant>
        </period>
    </context>
    <context id="c-63">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:CAD</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-64">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:CAD</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-65">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:CAD</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-66">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:CAD</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-67">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:CAD</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-68">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:EUR</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-06-30</instant>
        </period>
    </context>
    <context id="c-69">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:EUR</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-70">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:EUR</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-71">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:EUR</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-72">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:EUR</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-73">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:EUR</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-74">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:CNY</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-06-30</instant>
        </period>
    </context>
    <context id="c-75">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:CNY</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-76">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:CNY</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-77">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:CNY</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-78">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:CNY</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-79">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:CNY</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-80">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:PLN</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-06-30</instant>
        </period>
    </context>
    <context id="c-81">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:PLN</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-82">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:PLN</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-83">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:PLN</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-84">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:PLN</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-85">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:PLN</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-86">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:SEK</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-06-30</instant>
        </period>
    </context>
    <context id="c-87">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:SEK</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-88">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:SEK</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-89">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:SEK</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-90">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:SEK</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-91">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:SEK</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-92">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:INR</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-06-30</instant>
        </period>
    </context>
    <context id="c-93">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:INR</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-94">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:INR</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-95">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:INR</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-96">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:INR</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-97">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:INR</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-98">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:ARS</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-06-30</instant>
        </period>
    </context>
    <context id="c-99">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:ARS</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-100">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:ARS</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-101">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:ARS</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-102">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:ARS</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-103">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:ARS</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-104">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:DiscontinuedOperationsHeldforsaleMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">wprt:LightDutyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-105">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:DiscontinuedOperationsHeldforsaleMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">wprt:LightDutyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-106">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:DiscontinuedOperationsHeldforsaleMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">wprt:LightDutyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-107">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:DiscontinuedOperationsHeldforsaleMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">wprt:LightDutyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-108">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ShortTermDebtTypeAxis">us-gaap:LoansPayableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-07-14</instant>
        </period>
    </context>
    <context id="c-109">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:DiscontinuedOperationsDisposedOfBySaleMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">wprt:LightDutyMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-07-29</startDate>
            <endDate>2025-07-29</endDate>
        </period>
    </context>
    <context id="c-110">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">srt:ScenarioForecastMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:DiscontinuedOperationsDisposedOfBySaleMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">wprt:LightDutyMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-09-01</startDate>
            <endDate>2025-09-30</endDate>
        </period>
    </context>
    <context id="c-111">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:DiscontinuedOperationsHeldforsaleMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">wprt:LightDutyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-06-30</instant>
        </period>
    </context>
    <context id="c-112">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:DiscontinuedOperationsHeldforsaleMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">wprt:LightDutyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-113">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-06-30</instant>
        </period>
    </context>
    <context id="c-114">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">us-gaap:RelatedPartyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-115">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">wprt:CumminsWestportIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="c-116">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">wprt:CumminsWestportIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c-117">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">wprt:CespiraCanadaLPMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-06-30</instant>
        </period>
    </context>
    <context id="c-118">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">wprt:CespiraCanadaLPMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-119">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">wprt:CespiraSwedenABMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-06-30</instant>
        </period>
    </context>
    <context id="c-120">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">wprt:CespiraSwedenABMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-121">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">wprt:OtherEquityAccountedForInvesteesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-06-30</instant>
        </period>
    </context>
    <context id="c-122">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">wprt:OtherEquityAccountedForInvesteesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-123">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:EquityMethodInvestmentNonconsolidatedInvesteeAxis">wprt:CespiraJointVentureMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-06-30</instant>
        </period>
    </context>
    <context id="c-124">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:EquityMethodInvestmentNonconsolidatedInvesteeAxis">wprt:CespiraJointVentureMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-125">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:EquityMethodInvestmentNonconsolidatedInvesteeAxis">wprt:CespiraJointVentureMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-126">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:EquityMethodInvestmentNonconsolidatedInvesteeAxis">wprt:CespiraJointVentureMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-127">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:EquityMethodInvestmentNonconsolidatedInvesteeAxis">wprt:CespiraJointVentureMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-128">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:EquityMethodInvestmentNonconsolidatedInvesteeAxis">wprt:CespiraJointVentureMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-129">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">wprt:ComputerEquipmentAndSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-06-30</instant>
        </period>
    </context>
    <context id="c-130">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-06-30</instant>
        </period>
    </context>
    <context id="c-131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-06-30</instant>
        </period>
    </context>
    <context id="c-132">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-06-30</instant>
        </period>
    </context>
    <context id="c-133">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">wprt:ComputerEquipmentAndSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-134">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-135">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-136">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-137">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">wprt:EDCLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-06-30</instant>
        </period>
    </context>
    <context id="c-138">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">wprt:EDCLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-139">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-140">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">wprt:EDCLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-13</instant>
        </period>
    </context>
    <context id="c-141">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">wprt:ShareUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-142">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">wprt:ShareUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-143">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">wprt:ShareUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-144">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">wprt:ShareUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-145">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">wprt:ShareUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-06-30</instant>
        </period>
    </context>
    <context id="c-146">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">wprt:ShareUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-06-30</instant>
        </period>
    </context>
    <context id="c-147">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-148">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-149">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">wprt:PerformanceStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-150">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">wprt:PerformanceStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-151">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">wprt:DeferredShareUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-152">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">wprt:DeferredShareUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-153">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-154">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-155">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-156">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-157">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-158">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-159">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-160">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-161">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-162">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-163">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-164">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-165">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingAndMarketingExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-166">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingAndMarketingExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-167">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingAndMarketingExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-168">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingAndMarketingExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-169">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">wprt:SalesOfGoodsServicesAndOtherIncomeMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">wprt:CespiraMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-170">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">wprt:SalesOfGoodsServicesAndOtherIncomeMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">wprt:CespiraMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-171">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">wprt:SalesOfGoodsServicesAndOtherIncomeMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">wprt:CespiraMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-172">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">wprt:SalesOfGoodsServicesAndOtherIncomeMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">wprt:CespiraMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-173">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">wprt:InventoryPurchasedServicesAndOtherExpensesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">wprt:CespiraMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-174">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">wprt:InventoryPurchasedServicesAndOtherExpensesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">wprt:CespiraMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-175">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">wprt:InventoryPurchasedServicesAndOtherExpensesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">wprt:CespiraMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-176">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionAxis">wprt:InventoryPurchasedServicesAndOtherExpensesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">wprt:CespiraMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-177">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">wprt:CespiraMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-06-30</instant>
        </period>
    </context>
    <context id="c-178">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">wprt:CespiraMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-179">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">wprt:HighPressureControlsSystemsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-180">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">wprt:HeavyDutyOEMMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-181">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">wprt:CespiraMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-182">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-183">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">wprt:HighPressureControlsSystemsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-184">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">wprt:HeavyDutyOEMMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-185">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">wprt:CespiraMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-186">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-187">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">wprt:HighPressureControlsSystemsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-188">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">wprt:HeavyDutyOEMMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-189">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">wprt:CespiraMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-190">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-191">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">wprt:HighPressureControlsSystemsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-192">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">wprt:HeavyDutyOEMMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-193">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">wprt:CespiraMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-194">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-195">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">srt:ConsolidationEliminationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-196">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-197">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">srt:ConsolidationEliminationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-198">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-199">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">srt:ConsolidationEliminationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-200">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-201">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">srt:ConsolidationEliminationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-202">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-203">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueProductLineMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-204">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueProductLineMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-205">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueProductLineMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-206">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueProductLineMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-207">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AsiaMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueProductLineMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-208">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AsiaMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueProductLineMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-209">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AsiaMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueProductLineMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-210">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AsiaMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueProductLineMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-211">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AmericasMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueProductLineMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-04-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-212">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AmericasMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueProductLineMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-213">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AmericasMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueProductLineMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-214">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AmericasMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueProductLineMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c-215">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">wprt:LightDutyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-06-30</instant>
        </period>
    </context>
    <context id="c-216">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">wprt:LightDutyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-217">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">wprt:HighPressureControlsSystemsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-06-30</instant>
        </period>
    </context>
    <context id="c-218">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">wprt:HighPressureControlsSystemsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-219">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">wprt:HeavyDutyOEMMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-06-30</instant>
        </period>
    </context>
    <context id="c-220">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">wprt:HeavyDutyOEMMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-221">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-06-30</instant>
        </period>
    </context>
    <context id="c-222">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-223">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="wprt:ContractualObligationsTypeAxis">us-gaap:AccountsPayableAndAccruedLiabilitiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-06-30</instant>
        </period>
    </context>
    <context id="c-224">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="wprt:ContractualObligationsTypeAxis">us-gaap:AccountsPayableAndAccruedLiabilitiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-225">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="wprt:ContractualObligationsTypeAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-06-30</instant>
        </period>
    </context>
    <context id="c-226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="wprt:ContractualObligationsTypeAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <context id="c-227">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="wprt:ContractualObligationsTypeAxis">wprt:OperatingLeaseExpensesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-06-30</instant>
        </period>
    </context>
    <context id="c-228">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001370416</identifier>
            <segment>
                <xbrldi:explicitMember dimension="wprt:ContractualObligationsTypeAxis">wprt:OperatingLeaseExpensesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-06-30</endDate>
        </period>
    </context>
    <unit id="usd">
        <measure>iso4217:USD</measure>
    </unit>
    <unit id="shares">
        <measure>shares</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="eur">
        <measure>iso4217:EUR</measure>
    </unit>
    <unit id="tranche">
        <measure>wprt:tranche</measure>
    </unit>
    <unit id="cadPerShare">
        <divide>
            <unitNumerator>
                <measure>iso4217:CAD</measure>
            </unitNumerator>
            <unitDenominator>
                <measure>shares</measure>
            </unitDenominator>
        </divide>
    </unit>
    <unit id="segment">
        <measure>wprt:segment</measure>
    </unit>
    <dei:DocumentType contextRef="c-1" id="f-1387">6-K/A</dei:DocumentType>
    <dei:EntityRegistrantName contextRef="c-1" id="f-1388">WESTPORT FUEL SYSTEMS INC.</dei:EntityRegistrantName>
    <dei:AmendmentDescription contextRef="c-1" id="f-1389">INFORMATION CONTAINED IN THIS REPORT ON 6-K/AThis Report on Form 6-K/A (the &#x201c;Amendment&#x201d;) amends the Report on Form 6-K filed on August 11, 2025 (the &#x201c;Original 6-K&#x201d;) containing the Condensed Consolidated Interim Financial Statements of Westport Fuel Systems, Inc., (the &#x201c;Company&#x201d;) for the three and six months ended June 30, 2025 and 2024. The purpose of this Amendment is solely to provide the Company&#x2019;s Condensed Consolidated Interim Financial Statements for the three and six months ended June 30, 2025 and 2024 formatted in Inline eXtensible Business Reporting Language (&#x201c;iXBRL&#x201d;) in accordance with Rule 405 of Regulation S-T and paragraph C.(6)(a)(ii) of the General Instructions to Form 6-K, attached hereto as Exhibit 99.1. Such Condensed Consolidated Interim Financial Statements were previously filed without iXBRL as Exhibit 99.2 to the Original 6-K. Except as described above, this Amendment speaks as of the original filing date of the Original 6-K and does not amend, update or restate any information set forth in the Original 6-K or reflect any events that occurred subsequent to the original filing date of the Original 6-K. The information contained in this Form 6-K, including Exhibits 99.1, is hereby incorporated by reference into the Company&#x2019;s Registration Statement on Form F-3 (File No. 333-289669) and the registration statement on Form S-8, as amended (Registration No. 333-248912).</dei:AmendmentDescription>
    <dei:EntityCentralIndexKey contextRef="c-1" id="f-1">0001370416</dei:EntityCentralIndexKey>
    <dei:DocumentPeriodEndDate contextRef="c-1" id="f-2">2025-06-30</dei:DocumentPeriodEndDate>
    <dei:AmendmentFlag contextRef="c-1" id="f-3">true</dei:AmendmentFlag>
    <dei:CurrentFiscalYearEndDate contextRef="c-1" id="f-4">--12-31</dei:CurrentFiscalYearEndDate>
    <dei:DocumentFiscalYearFocus contextRef="c-1" id="f-5">2025</dei:DocumentFiscalYearFocus>
    <dei:DocumentFiscalPeriodFocus contextRef="c-1" id="f-6">Q2</dei:DocumentFiscalPeriodFocus>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents contextRef="c-2" decimals="-3" id="f-7" unitRef="usd">6064000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents contextRef="c-3" decimals="-3" id="f-8" unitRef="usd">14754000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:AccountsReceivableNetCurrent contextRef="c-2" decimals="-3" id="f-9" unitRef="usd">16580000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent contextRef="c-3" decimals="-3" id="f-10" unitRef="usd">18738000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:InventoryNet contextRef="c-2" decimals="-3" id="f-11" unitRef="usd">2856000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet contextRef="c-3" decimals="-3" id="f-12" unitRef="usd">6668000</us-gaap:InventoryNet>
    <us-gaap:PrepaidExpenseCurrent contextRef="c-2" decimals="-3" id="f-13" unitRef="usd">800000</us-gaap:PrepaidExpenseCurrent>
    <us-gaap:PrepaidExpenseCurrent contextRef="c-3" decimals="-3" id="f-14" unitRef="usd">1328000</us-gaap:PrepaidExpenseCurrent>
    <us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent contextRef="c-2" decimals="-3" id="f-15" unitRef="usd">201719000</us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent>
    <us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent contextRef="c-3" decimals="-3" id="f-16" unitRef="usd">128398000</us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent>
    <us-gaap:AssetsCurrent contextRef="c-2" decimals="-3" id="f-17" unitRef="usd">228019000</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent contextRef="c-3" decimals="-3" id="f-18" unitRef="usd">169886000</us-gaap:AssetsCurrent>
    <us-gaap:LongTermInvestments contextRef="c-2" decimals="-3" id="f-19" unitRef="usd">37122000</us-gaap:LongTermInvestments>
    <us-gaap:LongTermInvestments contextRef="c-3" decimals="-3" id="f-20" unitRef="usd">36866000</us-gaap:LongTermInvestments>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="c-2" decimals="-3" id="f-21" unitRef="usd">4444000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="c-3" decimals="-3" id="f-22" unitRef="usd">3120000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:OperatingLeaseRightOfUseAsset contextRef="c-2" decimals="-3" id="f-23" unitRef="usd">1942000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset contextRef="c-3" decimals="-3" id="f-24" unitRef="usd">823000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OtherAssetsNoncurrent contextRef="c-2" decimals="-3" id="f-25" unitRef="usd">527000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:OtherAssetsNoncurrent contextRef="c-3" decimals="-3" id="f-26" unitRef="usd">1431000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent contextRef="c-2" decimals="-3" id="f-27" unitRef="usd">0</us-gaap:DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent contextRef="c-3" decimals="-3" id="f-28" unitRef="usd">79495000</us-gaap:DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent>
    <us-gaap:Assets contextRef="c-2" decimals="-3" id="f-29" unitRef="usd">272054000</us-gaap:Assets>
    <us-gaap:Assets contextRef="c-3" decimals="-3" id="f-30" unitRef="usd">291621000</us-gaap:Assets>
    <us-gaap:AccountsPayableAndAccruedLiabilitiesCurrent contextRef="c-2" decimals="-3" id="f-31" unitRef="usd">17594000</us-gaap:AccountsPayableAndAccruedLiabilitiesCurrent>
    <us-gaap:AccountsPayableAndAccruedLiabilitiesCurrent contextRef="c-3" decimals="-3" id="f-32" unitRef="usd">19435000</us-gaap:AccountsPayableAndAccruedLiabilitiesCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent contextRef="c-2" decimals="-3" id="f-33" unitRef="usd">633000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent contextRef="c-3" decimals="-3" id="f-34" unitRef="usd">288000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:LongTermDebtAndCapitalLeaseObligationsCurrent contextRef="c-2" decimals="-3" id="f-35" unitRef="usd">3905000</us-gaap:LongTermDebtAndCapitalLeaseObligationsCurrent>
    <us-gaap:LongTermDebtAndCapitalLeaseObligationsCurrent contextRef="c-3" decimals="-3" id="f-36" unitRef="usd">3905000</us-gaap:LongTermDebtAndCapitalLeaseObligationsCurrent>
    <us-gaap:ProductWarrantyAccrualClassifiedCurrent contextRef="c-2" decimals="-3" id="f-37" unitRef="usd">1155000</us-gaap:ProductWarrantyAccrualClassifiedCurrent>
    <us-gaap:ProductWarrantyAccrualClassifiedCurrent contextRef="c-3" decimals="-3" id="f-38" unitRef="usd">1152000</us-gaap:ProductWarrantyAccrualClassifiedCurrent>
    <us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent contextRef="c-2" decimals="-3" id="f-39" unitRef="usd">136177000</us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent>
    <us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent contextRef="c-3" decimals="-3" id="f-40" unitRef="usd">84488000</us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent>
    <us-gaap:LiabilitiesCurrent contextRef="c-2" decimals="-3" id="f-41" unitRef="usd">159464000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent contextRef="c-3" decimals="-3" id="f-42" unitRef="usd">109268000</us-gaap:LiabilitiesCurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent contextRef="c-2" decimals="-3" id="f-43" unitRef="usd">1332000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent contextRef="c-3" decimals="-3" id="f-44" unitRef="usd">548000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:LongTermDebtAndCapitalLeaseObligations contextRef="c-2" decimals="-3" id="f-45" unitRef="usd">977000</us-gaap:LongTermDebtAndCapitalLeaseObligations>
    <us-gaap:LongTermDebtAndCapitalLeaseObligations contextRef="c-3" decimals="-3" id="f-46" unitRef="usd">2932000</us-gaap:LongTermDebtAndCapitalLeaseObligations>
    <us-gaap:OtherLiabilitiesNoncurrent contextRef="c-2" decimals="-3" id="f-47" unitRef="usd">1389000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:OtherLiabilitiesNoncurrent contextRef="c-3" decimals="-3" id="f-48" unitRef="usd">1388000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent contextRef="c-2" decimals="-3" id="f-49" unitRef="usd">0</us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent>
    <us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent contextRef="c-3" decimals="-3" id="f-50" unitRef="usd">40460000</us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent>
    <us-gaap:Liabilities contextRef="c-2" decimals="-3" id="f-51" unitRef="usd">163162000</us-gaap:Liabilities>
    <us-gaap:Liabilities contextRef="c-3" decimals="-3" id="f-52" unitRef="usd">154596000</us-gaap:Liabilities>
    <us-gaap:CommonStockSharesOutstanding contextRef="c-2" decimals="INF" id="f-53" unitRef="shares">17351005</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesIssued contextRef="c-2" decimals="INF" id="f-54" unitRef="shares">17351005</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesIssued contextRef="c-3" decimals="INF" id="f-55" unitRef="shares">17282934</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding contextRef="c-3" decimals="INF" id="f-56" unitRef="shares">17282934</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockValue contextRef="c-2" decimals="-3" id="f-57" unitRef="usd">1246643000</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue contextRef="c-3" decimals="-3" id="f-58" unitRef="usd">1245805000</us-gaap:CommonStockValue>
    <wprt:OtherEquityInstrument contextRef="c-2" decimals="-3" id="f-59" unitRef="usd">9027000</wprt:OtherEquityInstrument>
    <wprt:OtherEquityInstrument contextRef="c-3" decimals="-3" id="f-60" unitRef="usd">9472000</wprt:OtherEquityInstrument>
    <us-gaap:AdditionalPaidInCapitalCommonStock contextRef="c-2" decimals="-3" id="f-61" unitRef="usd">11516000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:AdditionalPaidInCapitalCommonStock contextRef="c-3" decimals="-3" id="f-62" unitRef="usd">11516000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:RetainedEarningsAccumulatedDeficit contextRef="c-2" decimals="-3" id="f-63" unitRef="usd">-1133070000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit contextRef="c-3" decimals="-3" id="f-64" unitRef="usd">-1096275000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax contextRef="c-2" decimals="-3" id="f-65" unitRef="usd">-25224000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax contextRef="c-3" decimals="-3" id="f-66" unitRef="usd">-33493000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:StockholdersEquity contextRef="c-2" decimals="-3" id="f-67" unitRef="usd">108892000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-3" decimals="-3" id="f-68" unitRef="usd">137025000</us-gaap:StockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity contextRef="c-2" decimals="-3" id="f-69" unitRef="usd">272054000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity contextRef="c-3" decimals="-3" id="f-70" unitRef="usd">291621000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:CommitmentsAndContingencies contextRef="c-2" id="f-71" unitRef="usd" xsi:nil="true"/>
    <us-gaap:CommitmentsAndContingencies contextRef="c-3" id="f-72" unitRef="usd" xsi:nil="true"/>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-4" decimals="-3" id="f-73" unitRef="usd">12498000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-5" decimals="-3" id="f-74" unitRef="usd">14109000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-1" decimals="-3" id="f-75" unitRef="usd">19821000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-6" decimals="-3" id="f-76" unitRef="usd">28537000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-4" decimals="-3" id="f-77" unitRef="usd">11656000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-5" decimals="-3" id="f-78" unitRef="usd">11750000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-1" decimals="-3" id="f-79" unitRef="usd">17444000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-6" decimals="-3" id="f-80" unitRef="usd">26720000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:GrossProfit contextRef="c-4" decimals="-3" id="f-81" unitRef="usd">842000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="c-5" decimals="-3" id="f-82" unitRef="usd">2359000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="c-1" decimals="-3" id="f-83" unitRef="usd">2377000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="c-6" decimals="-3" id="f-84" unitRef="usd">1817000</us-gaap:GrossProfit>
    <us-gaap:ResearchAndDevelopmentExpense contextRef="c-4" decimals="-3" id="f-85" unitRef="usd">1574000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense contextRef="c-5" decimals="-3" id="f-86" unitRef="usd">3460000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense contextRef="c-1" decimals="-3" id="f-87" unitRef="usd">2867000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense contextRef="c-6" decimals="-3" id="f-88" unitRef="usd">7809000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-4" decimals="-3" id="f-89" unitRef="usd">4106000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-5" decimals="-3" id="f-90" unitRef="usd">5720000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-1" decimals="-3" id="f-91" unitRef="usd">6778000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-6" decimals="-3" id="f-92" unitRef="usd">12915000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:SellingAndMarketingExpense contextRef="c-4" decimals="-3" id="f-93" unitRef="usd">290000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense contextRef="c-5" decimals="-3" id="f-94" unitRef="usd">962000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense contextRef="c-1" decimals="-3" id="f-95" unitRef="usd">733000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense contextRef="c-6" decimals="-3" id="f-96" unitRef="usd">2083000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:ForeignCurrencyTransactionGainLossBeforeTax contextRef="c-4" decimals="-3" id="f-97" unitRef="usd">4224000</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
    <us-gaap:ForeignCurrencyTransactionGainLossBeforeTax contextRef="c-5" decimals="-3" id="f-98" unitRef="usd">141000</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
    <us-gaap:ForeignCurrencyTransactionGainLossBeforeTax contextRef="c-1" decimals="-3" id="f-99" unitRef="usd">5427000</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
    <us-gaap:ForeignCurrencyTransactionGainLossBeforeTax contextRef="c-6" decimals="-3" id="f-100" unitRef="usd">-1795000</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
    <us-gaap:DepreciationAmortizationAndAccretionNet contextRef="c-4" decimals="-3" id="f-101" unitRef="usd">106000</us-gaap:DepreciationAmortizationAndAccretionNet>
    <us-gaap:DepreciationAmortizationAndAccretionNet contextRef="c-5" decimals="-3" id="f-102" unitRef="usd">98000</us-gaap:DepreciationAmortizationAndAccretionNet>
    <us-gaap:DepreciationAmortizationAndAccretionNet contextRef="c-1" decimals="-3" id="f-103" unitRef="usd">214000</us-gaap:DepreciationAmortizationAndAccretionNet>
    <us-gaap:DepreciationAmortizationAndAccretionNet contextRef="c-6" decimals="-3" id="f-104" unitRef="usd">456000</us-gaap:DepreciationAmortizationAndAccretionNet>
    <us-gaap:CostsAndExpenses contextRef="c-4" decimals="-3" id="f-105" unitRef="usd">1852000</us-gaap:CostsAndExpenses>
    <us-gaap:CostsAndExpenses contextRef="c-5" decimals="-3" id="f-106" unitRef="usd">10099000</us-gaap:CostsAndExpenses>
    <us-gaap:CostsAndExpenses contextRef="c-1" decimals="-3" id="f-107" unitRef="usd">5165000</us-gaap:CostsAndExpenses>
    <us-gaap:CostsAndExpenses contextRef="c-6" decimals="-3" id="f-108" unitRef="usd">25058000</us-gaap:CostsAndExpenses>
    <us-gaap:OperatingIncomeLoss contextRef="c-4" decimals="-3" id="f-109" unitRef="usd">-1010000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss contextRef="c-5" decimals="-3" id="f-110" unitRef="usd">-7740000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss contextRef="c-1" decimals="-3" id="f-111" unitRef="usd">-2788000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss contextRef="c-6" decimals="-3" id="f-112" unitRef="usd">-23241000</us-gaap:OperatingIncomeLoss>
    <us-gaap:IncomeLossFromEquityMethodInvestments contextRef="c-4" decimals="-3" id="f-113" unitRef="usd">-3686000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromEquityMethodInvestments contextRef="c-5" decimals="-3" id="f-114" unitRef="usd">-1102000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromEquityMethodInvestments contextRef="c-1" decimals="-3" id="f-115" unitRef="usd">-7570000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromEquityMethodInvestments contextRef="c-6" decimals="-3" id="f-116" unitRef="usd">-1102000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:DeconsolidationGainOrLossAmount contextRef="c-4" decimals="-3" id="f-117" unitRef="usd">0</us-gaap:DeconsolidationGainOrLossAmount>
    <us-gaap:DeconsolidationGainOrLossAmount contextRef="c-5" decimals="-3" id="f-118" unitRef="usd">13266000</us-gaap:DeconsolidationGainOrLossAmount>
    <us-gaap:DeconsolidationGainOrLossAmount contextRef="c-1" decimals="-3" id="f-119" unitRef="usd">0</us-gaap:DeconsolidationGainOrLossAmount>
    <us-gaap:DeconsolidationGainOrLossAmount contextRef="c-6" decimals="-3" id="f-120" unitRef="usd">13266000</us-gaap:DeconsolidationGainOrLossAmount>
    <us-gaap:InterestExpenseDebt contextRef="c-4" decimals="-3" id="f-121" unitRef="usd">166000</us-gaap:InterestExpenseDebt>
    <us-gaap:InterestExpenseDebt contextRef="c-5" decimals="-3" id="f-122" unitRef="usd">288000</us-gaap:InterestExpenseDebt>
    <us-gaap:InterestExpenseDebt contextRef="c-1" decimals="-3" id="f-123" unitRef="usd">358000</us-gaap:InterestExpenseDebt>
    <us-gaap:InterestExpenseDebt contextRef="c-6" decimals="-3" id="f-124" unitRef="usd">603000</us-gaap:InterestExpenseDebt>
    <us-gaap:InterestIncomeExpenseNonoperatingNet contextRef="c-4" decimals="-3" id="f-125" unitRef="usd">-147000</us-gaap:InterestIncomeExpenseNonoperatingNet>
    <us-gaap:InterestIncomeExpenseNonoperatingNet contextRef="c-5" decimals="-3" id="f-126" unitRef="usd">95000</us-gaap:InterestIncomeExpenseNonoperatingNet>
    <us-gaap:InterestIncomeExpenseNonoperatingNet contextRef="c-1" decimals="-3" id="f-127" unitRef="usd">502000</us-gaap:InterestIncomeExpenseNonoperatingNet>
    <us-gaap:InterestIncomeExpenseNonoperatingNet contextRef="c-6" decimals="-3" id="f-128" unitRef="usd">21000</us-gaap:InterestIncomeExpenseNonoperatingNet>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest contextRef="c-4" decimals="-3" id="f-129" unitRef="usd">-5009000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest contextRef="c-5" decimals="-3" id="f-130" unitRef="usd">4231000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest contextRef="c-1" decimals="-3" id="f-131" unitRef="usd">-10214000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest contextRef="c-6" decimals="-3" id="f-132" unitRef="usd">-11659000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeTaxExpenseBenefit contextRef="c-4" decimals="-3" id="f-133" unitRef="usd">44000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit contextRef="c-5" decimals="-3" id="f-134" unitRef="usd">85000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit contextRef="c-1" decimals="-3" id="f-135" unitRef="usd">134000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit contextRef="c-6" decimals="-3" id="f-136" unitRef="usd">216000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeLossFromContinuingOperations contextRef="c-4" decimals="-3" id="f-137" unitRef="usd">-5053000</us-gaap:IncomeLossFromContinuingOperations>
    <us-gaap:IncomeLossFromContinuingOperations contextRef="c-5" decimals="-3" id="f-138" unitRef="usd">4146000</us-gaap:IncomeLossFromContinuingOperations>
    <us-gaap:IncomeLossFromContinuingOperations contextRef="c-1" decimals="-3" id="f-139" unitRef="usd">-10348000</us-gaap:IncomeLossFromContinuingOperations>
    <us-gaap:IncomeLossFromContinuingOperations contextRef="c-6" decimals="-3" id="f-140" unitRef="usd">-11875000</us-gaap:IncomeLossFromContinuingOperations>
    <us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity contextRef="c-4" decimals="-3" id="f-141" unitRef="usd">-29291000</us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity>
    <us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity contextRef="c-5" decimals="-3" id="f-142" unitRef="usd">1671000</us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity>
    <us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity contextRef="c-1" decimals="-3" id="f-143" unitRef="usd">-26447000</us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity>
    <us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity contextRef="c-6" decimals="-3" id="f-144" unitRef="usd">4044000</us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity>
    <us-gaap:NetIncomeLoss contextRef="c-4" decimals="-3" id="f-145" unitRef="usd">-34344000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="c-5" decimals="-3" id="f-146" unitRef="usd">5817000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="c-1" decimals="-3" id="f-147" unitRef="usd">-36795000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="c-6" decimals="-3" id="f-148" unitRef="usd">-7831000</us-gaap:NetIncomeLoss>
    <us-gaap:CumulativeTranslationAdjustmentNetOfTaxPeriodIncreaseDecrease contextRef="c-4" decimals="-3" id="f-149" unitRef="usd">6921000</us-gaap:CumulativeTranslationAdjustmentNetOfTaxPeriodIncreaseDecrease>
    <us-gaap:CumulativeTranslationAdjustmentNetOfTaxPeriodIncreaseDecrease contextRef="c-5" decimals="-3" id="f-150" unitRef="usd">-1212000</us-gaap:CumulativeTranslationAdjustmentNetOfTaxPeriodIncreaseDecrease>
    <us-gaap:CumulativeTranslationAdjustmentNetOfTaxPeriodIncreaseDecrease contextRef="c-1" decimals="-3" id="f-151" unitRef="usd">10562000</us-gaap:CumulativeTranslationAdjustmentNetOfTaxPeriodIncreaseDecrease>
    <us-gaap:CumulativeTranslationAdjustmentNetOfTaxPeriodIncreaseDecrease contextRef="c-6" decimals="-3" id="f-152" unitRef="usd">-1642000</us-gaap:CumulativeTranslationAdjustmentNetOfTaxPeriodIncreaseDecrease>
    <us-gaap:OciEquityMethodInvestmentAfterTax contextRef="c-4" decimals="-3" id="f-153" unitRef="usd">-1464000</us-gaap:OciEquityMethodInvestmentAfterTax>
    <us-gaap:OciEquityMethodInvestmentAfterTax contextRef="c-5" decimals="-3" id="f-154" unitRef="usd">-83000</us-gaap:OciEquityMethodInvestmentAfterTax>
    <us-gaap:OciEquityMethodInvestmentAfterTax contextRef="c-1" decimals="-3" id="f-155" unitRef="usd">-2293000</us-gaap:OciEquityMethodInvestmentAfterTax>
    <us-gaap:OciEquityMethodInvestmentAfterTax contextRef="c-6" decimals="-3" id="f-156" unitRef="usd">-83000</us-gaap:OciEquityMethodInvestmentAfterTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent contextRef="c-4" decimals="-3" id="f-157" unitRef="usd">5457000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent contextRef="c-5" decimals="-3" id="f-158" unitRef="usd">-1295000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent contextRef="c-1" decimals="-3" id="f-159" unitRef="usd">8269000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent contextRef="c-6" decimals="-3" id="f-160" unitRef="usd">-1725000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <us-gaap:ComprehensiveIncomeNetOfTax contextRef="c-4" decimals="-3" id="f-161" unitRef="usd">-28887000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax contextRef="c-5" decimals="-3" id="f-162" unitRef="usd">4522000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax contextRef="c-1" decimals="-3" id="f-163" unitRef="usd">-28526000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax contextRef="c-6" decimals="-3" id="f-164" unitRef="usd">-9556000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:IncomeLossFromContinuingOperationsPerBasicShare
      contextRef="c-4"
      decimals="2"
      id="f-165"
      unitRef="usdPerShare">-0.29</us-gaap:IncomeLossFromContinuingOperationsPerBasicShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerBasicShare
      contextRef="c-5"
      decimals="2"
      id="f-166"
      unitRef="usdPerShare">0.24</us-gaap:IncomeLossFromContinuingOperationsPerBasicShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerBasicShare
      contextRef="c-1"
      decimals="2"
      id="f-167"
      unitRef="usdPerShare">-0.60</us-gaap:IncomeLossFromContinuingOperationsPerBasicShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerBasicShare
      contextRef="c-6"
      decimals="2"
      id="f-168"
      unitRef="usdPerShare">-0.69</us-gaap:IncomeLossFromContinuingOperationsPerBasicShare>
    <us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare
      contextRef="c-4"
      decimals="2"
      id="f-169"
      unitRef="usdPerShare">-1.69</us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare>
    <us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare
      contextRef="c-5"
      decimals="2"
      id="f-170"
      unitRef="usdPerShare">0.10</us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare>
    <us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare
      contextRef="c-1"
      decimals="2"
      id="f-171"
      unitRef="usdPerShare">-1.53</us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare>
    <us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare
      contextRef="c-6"
      decimals="2"
      id="f-172"
      unitRef="usdPerShare">0.23</us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxPerBasicShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare
      contextRef="c-4"
      decimals="2"
      id="f-173"
      unitRef="usdPerShare">-0.29</us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare
      contextRef="c-5"
      decimals="2"
      id="f-174"
      unitRef="usdPerShare">0.24</us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare
      contextRef="c-1"
      decimals="2"
      id="f-175"
      unitRef="usdPerShare">-0.60</us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare
      contextRef="c-6"
      decimals="2"
      id="f-176"
      unitRef="usdPerShare">-0.69</us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare>
    <us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare
      contextRef="c-4"
      decimals="2"
      id="f-177"
      unitRef="usdPerShare">-1.69</us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare>
    <us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare
      contextRef="c-5"
      decimals="2"
      id="f-178"
      unitRef="usdPerShare">0.10</us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare>
    <us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare
      contextRef="c-1"
      decimals="2"
      id="f-179"
      unitRef="usdPerShare">-1.53</us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare>
    <us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare
      contextRef="c-6"
      decimals="2"
      id="f-180"
      unitRef="usdPerShare">0.23</us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxPerDilutedShare>
    <us-gaap:EarningsPerShareDiluted
      contextRef="c-4"
      decimals="2"
      id="f-181"
      unitRef="usdPerShare">-1.98</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareBasic
      contextRef="c-4"
      decimals="2"
      id="f-182"
      unitRef="usdPerShare">-1.98</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="c-5"
      decimals="2"
      id="f-183"
      unitRef="usdPerShare">0.34</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="c-5"
      decimals="2"
      id="f-184"
      unitRef="usdPerShare">0.34</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareBasic
      contextRef="c-1"
      decimals="2"
      id="f-185"
      unitRef="usdPerShare">-2.12</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="c-1"
      decimals="2"
      id="f-186"
      unitRef="usdPerShare">-2.12</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="c-6"
      decimals="2"
      id="f-187"
      unitRef="usdPerShare">-0.45</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareBasic
      contextRef="c-6"
      decimals="2"
      id="f-188"
      unitRef="usdPerShare">-0.45</us-gaap:EarningsPerShareBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic contextRef="c-4" decimals="0" id="f-189" unitRef="shares">17338288</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic contextRef="c-5" decimals="0" id="f-190" unitRef="shares">17239460</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic contextRef="c-1" decimals="0" id="f-191" unitRef="shares">17330527</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic contextRef="c-6" decimals="0" id="f-192" unitRef="shares">17230000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding contextRef="c-4" decimals="0" id="f-193" unitRef="shares">17338288</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding contextRef="c-5" decimals="0" id="f-194" unitRef="shares">17488070</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding contextRef="c-1" decimals="0" id="f-195" unitRef="shares">17330527</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding contextRef="c-6" decimals="0" id="f-196" unitRef="shares">17230000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:CommonStockSharesOutstanding contextRef="c-7" decimals="INF" id="f-197" unitRef="shares">17223154</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity contextRef="c-7" decimals="-3" id="f-198" unitRef="usd">1245408000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-8" decimals="-3" id="f-199" unitRef="usd">9134000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-9" decimals="-3" id="f-200" unitRef="usd">11516000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-10" decimals="-3" id="f-201" unitRef="usd">-1088082000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-11" decimals="-3" id="f-202" unitRef="usd">-31275000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-12" decimals="-3" id="f-203" unitRef="usd">146701000</us-gaap:StockholdersEquity>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation
      contextRef="c-13"
      decimals="INF"
      id="f-204"
      unitRef="shares">35210</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation contextRef="c-13" decimals="-3" id="f-205" unitRef="usd">243000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation contextRef="c-14" decimals="-3" id="f-206" unitRef="usd">-243000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation contextRef="c-5" decimals="-3" id="f-207" unitRef="usd">0</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue contextRef="c-14" decimals="-3" id="f-208" unitRef="usd">302000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue contextRef="c-5" decimals="-3" id="f-209" unitRef="usd">302000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:NetIncomeLoss contextRef="c-15" decimals="-3" id="f-210" unitRef="usd">5817000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="c-5" decimals="-3" id="f-211" unitRef="usd">5817000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent contextRef="c-16" decimals="-3" id="f-212" unitRef="usd">-1295000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent contextRef="c-5" decimals="-3" id="f-213" unitRef="usd">-1295000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="c-17"
      decimals="INF"
      id="f-214"
      unitRef="shares">17258364</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity contextRef="c-17" decimals="-3" id="f-215" unitRef="usd">1245651000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-18" decimals="-3" id="f-216" unitRef="usd">9193000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-19" decimals="-3" id="f-217" unitRef="usd">11516000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-20" decimals="-3" id="f-218" unitRef="usd">-1082265000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-21" decimals="-3" id="f-219" unitRef="usd">-32570000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-22" decimals="-3" id="f-220" unitRef="usd">151525000</us-gaap:StockholdersEquity>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="c-23"
      decimals="INF"
      id="f-221"
      unitRef="shares">17174502</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity contextRef="c-23" decimals="-3" id="f-222" unitRef="usd">1244539000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-24" decimals="-3" id="f-223" unitRef="usd">9672000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-25" decimals="-3" id="f-224" unitRef="usd">11516000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-26" decimals="-3" id="f-225" unitRef="usd">-1074434000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-27" decimals="-3" id="f-226" unitRef="usd">-30845000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-28" decimals="-3" id="f-227" unitRef="usd">160448000</us-gaap:StockholdersEquity>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation
      contextRef="c-29"
      decimals="INF"
      id="f-228"
      unitRef="shares">83862</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation contextRef="c-29" decimals="-3" id="f-229" unitRef="usd">1112000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation contextRef="c-30" decimals="-3" id="f-230" unitRef="usd">-1112000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation contextRef="c-6" decimals="-3" id="f-231" unitRef="usd">0</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue contextRef="c-30" decimals="-3" id="f-232" unitRef="usd">633000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue contextRef="c-6" decimals="-3" id="f-233" unitRef="usd">633000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:NetIncomeLoss contextRef="c-31" decimals="-3" id="f-234" unitRef="usd">-7831000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="c-6" decimals="-3" id="f-235" unitRef="usd">-7831000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent contextRef="c-32" decimals="-3" id="f-236" unitRef="usd">-1725000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent contextRef="c-6" decimals="-3" id="f-237" unitRef="usd">-1725000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="c-17"
      decimals="INF"
      id="f-238"
      unitRef="shares">17258364</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity contextRef="c-17" decimals="-3" id="f-239" unitRef="usd">1245651000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-18" decimals="-3" id="f-240" unitRef="usd">9193000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-19" decimals="-3" id="f-241" unitRef="usd">11516000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-20" decimals="-3" id="f-242" unitRef="usd">-1082265000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-21" decimals="-3" id="f-243" unitRef="usd">-32570000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-22" decimals="-3" id="f-244" unitRef="usd">151525000</us-gaap:StockholdersEquity>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="c-33"
      decimals="INF"
      id="f-245"
      unitRef="shares">17326732</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity contextRef="c-33" decimals="-3" id="f-246" unitRef="usd">1246408000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-34" decimals="-3" id="f-247" unitRef="usd">9081000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-35" decimals="-3" id="f-248" unitRef="usd">11516000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-36" decimals="-3" id="f-249" unitRef="usd">-1098726000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-37" decimals="-3" id="f-250" unitRef="usd">-30681000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-38" decimals="-3" id="f-251" unitRef="usd">137598000</us-gaap:StockholdersEquity>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation
      contextRef="c-39"
      decimals="INF"
      id="f-252"
      unitRef="shares">24273</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation contextRef="c-39" decimals="-3" id="f-253" unitRef="usd">235000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation contextRef="c-40" decimals="-3" id="f-254" unitRef="usd">-235000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation contextRef="c-4" decimals="-3" id="f-255" unitRef="usd">0</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue contextRef="c-40" decimals="-3" id="f-256" unitRef="usd">181000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue contextRef="c-4" decimals="-3" id="f-257" unitRef="usd">181000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:NetIncomeLoss contextRef="c-41" decimals="-3" id="f-258" unitRef="usd">-34344000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="c-4" decimals="-3" id="f-259" unitRef="usd">-34344000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent contextRef="c-42" decimals="-3" id="f-260" unitRef="usd">5457000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent contextRef="c-4" decimals="-3" id="f-261" unitRef="usd">5457000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="c-43"
      decimals="INF"
      id="f-262"
      unitRef="shares">17351005</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity contextRef="c-43" decimals="-3" id="f-263" unitRef="usd">1246643000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-44" decimals="-3" id="f-264" unitRef="usd">9027000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-45" decimals="-3" id="f-265" unitRef="usd">11516000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-46" decimals="-3" id="f-266" unitRef="usd">-1133070000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-47" decimals="-3" id="f-267" unitRef="usd">-25224000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-2" decimals="-3" id="f-268" unitRef="usd">108892000</us-gaap:StockholdersEquity>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="c-48"
      decimals="INF"
      id="f-269"
      unitRef="shares">17282934</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity contextRef="c-48" decimals="-3" id="f-270" unitRef="usd">1245805000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-49" decimals="-3" id="f-271" unitRef="usd">9472000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-50" decimals="-3" id="f-272" unitRef="usd">11516000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-51" decimals="-3" id="f-273" unitRef="usd">-1096275000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-52" decimals="-3" id="f-274" unitRef="usd">-33493000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-3" decimals="-3" id="f-275" unitRef="usd">137025000</us-gaap:StockholdersEquity>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation
      contextRef="c-53"
      decimals="INF"
      id="f-276"
      unitRef="shares">68071</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation contextRef="c-53" decimals="-3" id="f-277" unitRef="usd">838000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation contextRef="c-54" decimals="-3" id="f-278" unitRef="usd">-838000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation contextRef="c-1" decimals="-3" id="f-279" unitRef="usd">0</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue contextRef="c-54" decimals="-3" id="f-280" unitRef="usd">393000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue contextRef="c-1" decimals="-3" id="f-281" unitRef="usd">393000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:NetIncomeLoss contextRef="c-55" decimals="-3" id="f-282" unitRef="usd">-36795000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="c-1" decimals="-3" id="f-283" unitRef="usd">-36795000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent contextRef="c-56" decimals="-3" id="f-284" unitRef="usd">8269000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent contextRef="c-1" decimals="-3" id="f-285" unitRef="usd">8269000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="c-43"
      decimals="INF"
      id="f-286"
      unitRef="shares">17351005</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity contextRef="c-43" decimals="-3" id="f-287" unitRef="usd">1246643000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-44" decimals="-3" id="f-288" unitRef="usd">9027000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-45" decimals="-3" id="f-289" unitRef="usd">11516000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-46" decimals="-3" id="f-290" unitRef="usd">-1133070000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-47" decimals="-3" id="f-291" unitRef="usd">-25224000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-2" decimals="-3" id="f-292" unitRef="usd">108892000</us-gaap:StockholdersEquity>
    <us-gaap:IncomeLossFromContinuingOperations contextRef="c-4" decimals="-3" id="f-293" unitRef="usd">-5053000</us-gaap:IncomeLossFromContinuingOperations>
    <us-gaap:IncomeLossFromContinuingOperations contextRef="c-5" decimals="-3" id="f-294" unitRef="usd">4146000</us-gaap:IncomeLossFromContinuingOperations>
    <us-gaap:IncomeLossFromContinuingOperations contextRef="c-1" decimals="-3" id="f-295" unitRef="usd">-10348000</us-gaap:IncomeLossFromContinuingOperations>
    <us-gaap:IncomeLossFromContinuingOperations contextRef="c-6" decimals="-3" id="f-296" unitRef="usd">-11875000</us-gaap:IncomeLossFromContinuingOperations>
    <us-gaap:DepreciationDepletionAndAmortization contextRef="c-4" decimals="-3" id="f-297" unitRef="usd">219000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization contextRef="c-5" decimals="-3" id="f-298" unitRef="usd">169000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization contextRef="c-1" decimals="-3" id="f-299" unitRef="usd">397000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization contextRef="c-6" decimals="-3" id="f-300" unitRef="usd">1867000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:ShareBasedCompensation contextRef="c-4" decimals="-3" id="f-301" unitRef="usd">126000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation contextRef="c-5" decimals="-3" id="f-302" unitRef="usd">222000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation contextRef="c-1" decimals="-3" id="f-303" unitRef="usd">304000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation contextRef="c-6" decimals="-3" id="f-304" unitRef="usd">471000</us-gaap:ShareBasedCompensation>
    <us-gaap:ForeignCurrencyTransactionGainLossBeforeTax contextRef="c-4" decimals="-3" id="f-305" unitRef="usd">4224000</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
    <us-gaap:ForeignCurrencyTransactionGainLossBeforeTax contextRef="c-5" decimals="-3" id="f-306" unitRef="usd">141000</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
    <us-gaap:ForeignCurrencyTransactionGainLossBeforeTax contextRef="c-1" decimals="-3" id="f-307" unitRef="usd">5427000</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
    <us-gaap:ForeignCurrencyTransactionGainLossBeforeTax contextRef="c-6" decimals="-3" id="f-308" unitRef="usd">-1795000</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
    <us-gaap:DeferredIncomeTaxExpenseBenefit contextRef="c-4" decimals="-3" id="f-309" unitRef="usd">-6000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit contextRef="c-5" decimals="-3" id="f-310" unitRef="usd">9000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit contextRef="c-1" decimals="-3" id="f-311" unitRef="usd">-9000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit contextRef="c-6" decimals="-3" id="f-312" unitRef="usd">20000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:IncomeLossFromEquityMethodInvestments contextRef="c-4" decimals="-3" id="f-313" unitRef="usd">-3686000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromEquityMethodInvestments contextRef="c-5" decimals="-3" id="f-314" unitRef="usd">-1102000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromEquityMethodInvestments contextRef="c-1" decimals="-3" id="f-315" unitRef="usd">-7570000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromEquityMethodInvestments contextRef="c-6" decimals="-3" id="f-316" unitRef="usd">-1102000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:InterestExpenseLongTermDebt contextRef="c-4" decimals="-3" id="f-317" unitRef="usd">23000</us-gaap:InterestExpenseLongTermDebt>
    <us-gaap:InterestExpenseLongTermDebt contextRef="c-5" decimals="-3" id="f-318" unitRef="usd">12000</us-gaap:InterestExpenseLongTermDebt>
    <us-gaap:InterestExpenseLongTermDebt contextRef="c-1" decimals="-3" id="f-319" unitRef="usd">45000</us-gaap:InterestExpenseLongTermDebt>
    <us-gaap:InterestExpenseLongTermDebt contextRef="c-6" decimals="-3" id="f-320" unitRef="usd">34000</us-gaap:InterestExpenseLongTermDebt>
    <us-gaap:InventoryWriteDown contextRef="c-4" decimals="-3" id="f-321" unitRef="usd">140000</us-gaap:InventoryWriteDown>
    <us-gaap:InventoryWriteDown contextRef="c-5" decimals="-3" id="f-322" unitRef="usd">307000</us-gaap:InventoryWriteDown>
    <us-gaap:InventoryWriteDown contextRef="c-1" decimals="-3" id="f-323" unitRef="usd">110000</us-gaap:InventoryWriteDown>
    <us-gaap:InventoryWriteDown contextRef="c-6" decimals="-3" id="f-324" unitRef="usd">503000</us-gaap:InventoryWriteDown>
    <us-gaap:DeconsolidationGainOrLossAmount contextRef="c-4" decimals="-3" id="f-325" unitRef="usd">0</us-gaap:DeconsolidationGainOrLossAmount>
    <us-gaap:DeconsolidationGainOrLossAmount contextRef="c-5" decimals="-3" id="f-326" unitRef="usd">13266000</us-gaap:DeconsolidationGainOrLossAmount>
    <us-gaap:DeconsolidationGainOrLossAmount contextRef="c-1" decimals="-3" id="f-327" unitRef="usd">0</us-gaap:DeconsolidationGainOrLossAmount>
    <us-gaap:DeconsolidationGainOrLossAmount contextRef="c-6" decimals="-3" id="f-328" unitRef="usd">13266000</us-gaap:DeconsolidationGainOrLossAmount>
    <us-gaap:IncreaseDecreaseInOperatingCapital contextRef="c-4" decimals="-3" id="f-329" unitRef="usd">533000</us-gaap:IncreaseDecreaseInOperatingCapital>
    <us-gaap:IncreaseDecreaseInOperatingCapital contextRef="c-5" decimals="-3" id="f-330" unitRef="usd">-8964000</us-gaap:IncreaseDecreaseInOperatingCapital>
    <us-gaap:IncreaseDecreaseInOperatingCapital contextRef="c-1" decimals="-3" id="f-331" unitRef="usd">6869000</us-gaap:IncreaseDecreaseInOperatingCapital>
    <us-gaap:IncreaseDecreaseInOperatingCapital contextRef="c-6" decimals="-3" id="f-332" unitRef="usd">-17141000</us-gaap:IncreaseDecreaseInOperatingCapital>
    <us-gaap:NetCashProvidedByUsedInOperatingActivitiesContinuingOperations contextRef="c-4" decimals="-3" id="f-333" unitRef="usd">-5622000</us-gaap:NetCashProvidedByUsedInOperatingActivitiesContinuingOperations>
    <us-gaap:NetCashProvidedByUsedInOperatingActivitiesContinuingOperations contextRef="c-5" decimals="-3" id="f-334" unitRef="usd">1524000</us-gaap:NetCashProvidedByUsedInOperatingActivitiesContinuingOperations>
    <us-gaap:NetCashProvidedByUsedInOperatingActivitiesContinuingOperations contextRef="c-1" decimals="-3" id="f-335" unitRef="usd">-14227000</us-gaap:NetCashProvidedByUsedInOperatingActivitiesContinuingOperations>
    <us-gaap:NetCashProvidedByUsedInOperatingActivitiesContinuingOperations contextRef="c-6" decimals="-3" id="f-336" unitRef="usd">-2208000</us-gaap:NetCashProvidedByUsedInOperatingActivitiesContinuingOperations>
    <us-gaap:CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations contextRef="c-4" decimals="-3" id="f-337" unitRef="usd">-582000</us-gaap:CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations>
    <us-gaap:CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations contextRef="c-5" decimals="-3" id="f-338" unitRef="usd">-25000</us-gaap:CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations>
    <us-gaap:CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations contextRef="c-1" decimals="-3" id="f-339" unitRef="usd">3125000</us-gaap:CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations>
    <us-gaap:CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations contextRef="c-6" decimals="-3" id="f-340" unitRef="usd">3849000</us-gaap:CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment contextRef="c-4" decimals="-3" id="f-341" unitRef="usd">822000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment contextRef="c-5" decimals="-3" id="f-342" unitRef="usd">1262000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment contextRef="c-1" decimals="-3" id="f-343" unitRef="usd">1395000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment contextRef="c-6" decimals="-3" id="f-344" unitRef="usd">2006000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:ProceedsFromSaleMaturityAndCollectionsOfInvestments contextRef="c-4" decimals="-3" id="f-345" unitRef="usd">0</us-gaap:ProceedsFromSaleMaturityAndCollectionsOfInvestments>
    <us-gaap:ProceedsFromSaleMaturityAndCollectionsOfInvestments contextRef="c-5" decimals="-3" id="f-346" unitRef="usd">18888000</us-gaap:ProceedsFromSaleMaturityAndCollectionsOfInvestments>
    <us-gaap:ProceedsFromSaleMaturityAndCollectionsOfInvestments contextRef="c-1" decimals="-3" id="f-347" unitRef="usd">0</us-gaap:ProceedsFromSaleMaturityAndCollectionsOfInvestments>
    <us-gaap:ProceedsFromSaleMaturityAndCollectionsOfInvestments contextRef="c-6" decimals="-3" id="f-348" unitRef="usd">18888000</us-gaap:ProceedsFromSaleMaturityAndCollectionsOfInvestments>
    <wprt:ProceedsFromCollectionOfHoldbackReceivable contextRef="c-4" decimals="-3" id="f-349" unitRef="usd">0</wprt:ProceedsFromCollectionOfHoldbackReceivable>
    <wprt:ProceedsFromCollectionOfHoldbackReceivable contextRef="c-5" decimals="-3" id="f-350" unitRef="usd">0</wprt:ProceedsFromCollectionOfHoldbackReceivable>
    <wprt:ProceedsFromCollectionOfHoldbackReceivable contextRef="c-1" decimals="-3" id="f-351" unitRef="usd">10450000</wprt:ProceedsFromCollectionOfHoldbackReceivable>
    <wprt:ProceedsFromCollectionOfHoldbackReceivable contextRef="c-6" decimals="-3" id="f-352" unitRef="usd">0</wprt:ProceedsFromCollectionOfHoldbackReceivable>
    <us-gaap:PaymentsToAcquireEquityMethodInvestments contextRef="c-4" decimals="-3" id="f-353" unitRef="usd">4185000</us-gaap:PaymentsToAcquireEquityMethodInvestments>
    <us-gaap:PaymentsToAcquireEquityMethodInvestments contextRef="c-5" decimals="-3" id="f-354" unitRef="usd">9900000</us-gaap:PaymentsToAcquireEquityMethodInvestments>
    <us-gaap:PaymentsToAcquireEquityMethodInvestments contextRef="c-1" decimals="-3" id="f-355" unitRef="usd">8871000</us-gaap:PaymentsToAcquireEquityMethodInvestments>
    <us-gaap:PaymentsToAcquireEquityMethodInvestments contextRef="c-6" decimals="-3" id="f-356" unitRef="usd">9900000</us-gaap:PaymentsToAcquireEquityMethodInvestments>
    <us-gaap:NetCashProvidedByUsedInInvestingActivitiesContinuingOperations contextRef="c-4" decimals="-3" id="f-357" unitRef="usd">-5007000</us-gaap:NetCashProvidedByUsedInInvestingActivitiesContinuingOperations>
    <us-gaap:NetCashProvidedByUsedInInvestingActivitiesContinuingOperations contextRef="c-5" decimals="-3" id="f-358" unitRef="usd">7726000</us-gaap:NetCashProvidedByUsedInInvestingActivitiesContinuingOperations>
    <us-gaap:NetCashProvidedByUsedInInvestingActivitiesContinuingOperations contextRef="c-1" decimals="-3" id="f-359" unitRef="usd">184000</us-gaap:NetCashProvidedByUsedInInvestingActivitiesContinuingOperations>
    <us-gaap:NetCashProvidedByUsedInInvestingActivitiesContinuingOperations contextRef="c-6" decimals="-3" id="f-360" unitRef="usd">6982000</us-gaap:NetCashProvidedByUsedInInvestingActivitiesContinuingOperations>
    <us-gaap:CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations contextRef="c-4" decimals="-3" id="f-361" unitRef="usd">-460000</us-gaap:CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations>
    <us-gaap:CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations contextRef="c-5" decimals="-3" id="f-362" unitRef="usd">-1902000</us-gaap:CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations>
    <us-gaap:CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations contextRef="c-1" decimals="-3" id="f-363" unitRef="usd">-2947000</us-gaap:CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations>
    <us-gaap:CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations contextRef="c-6" decimals="-3" id="f-364" unitRef="usd">-5916000</us-gaap:CashProvidedByUsedInInvestingActivitiesDiscontinuedOperations>
    <us-gaap:RepaymentsOfLongTermLinesOfCredit contextRef="c-4" decimals="-3" id="f-365" unitRef="usd">1000000</us-gaap:RepaymentsOfLongTermLinesOfCredit>
    <us-gaap:RepaymentsOfLongTermLinesOfCredit contextRef="c-5" decimals="-3" id="f-366" unitRef="usd">13700000</us-gaap:RepaymentsOfLongTermLinesOfCredit>
    <us-gaap:RepaymentsOfLongTermLinesOfCredit contextRef="c-1" decimals="-3" id="f-367" unitRef="usd">2000000</us-gaap:RepaymentsOfLongTermLinesOfCredit>
    <us-gaap:RepaymentsOfLongTermLinesOfCredit contextRef="c-6" decimals="-3" id="f-368" unitRef="usd">29043000</us-gaap:RepaymentsOfLongTermLinesOfCredit>
    <us-gaap:ProceedsFromLinesOfCredit contextRef="c-4" decimals="-3" id="f-369" unitRef="usd">0</us-gaap:ProceedsFromLinesOfCredit>
    <us-gaap:ProceedsFromLinesOfCredit contextRef="c-5" decimals="-3" id="f-370" unitRef="usd">7504000</us-gaap:ProceedsFromLinesOfCredit>
    <us-gaap:ProceedsFromLinesOfCredit contextRef="c-1" decimals="-3" id="f-371" unitRef="usd">0</us-gaap:ProceedsFromLinesOfCredit>
    <us-gaap:ProceedsFromLinesOfCredit contextRef="c-6" decimals="-3" id="f-372" unitRef="usd">15550000</us-gaap:ProceedsFromLinesOfCredit>
    <us-gaap:NetCashProvidedByUsedInFinancingActivitiesContinuingOperations contextRef="c-4" decimals="-3" id="f-373" unitRef="usd">-1000000</us-gaap:NetCashProvidedByUsedInFinancingActivitiesContinuingOperations>
    <us-gaap:NetCashProvidedByUsedInFinancingActivitiesContinuingOperations contextRef="c-5" decimals="-3" id="f-374" unitRef="usd">-6196000</us-gaap:NetCashProvidedByUsedInFinancingActivitiesContinuingOperations>
    <us-gaap:NetCashProvidedByUsedInFinancingActivitiesContinuingOperations contextRef="c-1" decimals="-3" id="f-375" unitRef="usd">-2000000</us-gaap:NetCashProvidedByUsedInFinancingActivitiesContinuingOperations>
    <us-gaap:NetCashProvidedByUsedInFinancingActivitiesContinuingOperations contextRef="c-6" decimals="-3" id="f-376" unitRef="usd">-13493000</us-gaap:NetCashProvidedByUsedInFinancingActivitiesContinuingOperations>
    <us-gaap:CashProvidedByUsedInFinancingActivitiesDiscontinuedOperations contextRef="c-4" decimals="-3" id="f-377" unitRef="usd">-3176000</us-gaap:CashProvidedByUsedInFinancingActivitiesDiscontinuedOperations>
    <us-gaap:CashProvidedByUsedInFinancingActivitiesDiscontinuedOperations contextRef="c-5" decimals="-3" id="f-378" unitRef="usd">-2704000</us-gaap:CashProvidedByUsedInFinancingActivitiesDiscontinuedOperations>
    <us-gaap:CashProvidedByUsedInFinancingActivitiesDiscontinuedOperations contextRef="c-1" decimals="-3" id="f-379" unitRef="usd">-6094000</us-gaap:CashProvidedByUsedInFinancingActivitiesDiscontinuedOperations>
    <us-gaap:CashProvidedByUsedInFinancingActivitiesDiscontinuedOperations contextRef="c-6" decimals="-3" id="f-380" unitRef="usd">-1248000</us-gaap:CashProvidedByUsedInFinancingActivitiesDiscontinuedOperations>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents contextRef="c-4" decimals="-3" id="f-381" unitRef="usd">4593000</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents contextRef="c-5" decimals="-3" id="f-382" unitRef="usd">-803000</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents contextRef="c-1" decimals="-3" id="f-383" unitRef="usd">5696000</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents contextRef="c-6" decimals="-3" id="f-384" unitRef="usd">-1297000</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect contextRef="c-4" decimals="-3" id="f-385" unitRef="usd">-11254000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect contextRef="c-5" decimals="-3" id="f-386" unitRef="usd">-2380000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect contextRef="c-1" decimals="-3" id="f-387" unitRef="usd">-16263000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect contextRef="c-6" decimals="-3" id="f-388" unitRef="usd">-13331000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations contextRef="c-38" decimals="-3" id="f-389" unitRef="usd">32637000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations contextRef="c-12" decimals="-3" id="f-390" unitRef="usd">43902000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations contextRef="c-3" decimals="-3" id="f-391" unitRef="usd">37646000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations contextRef="c-28" decimals="-3" id="f-392" unitRef="usd">54853000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations contextRef="c-2" decimals="-3" id="f-393" unitRef="usd">21383000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations contextRef="c-22" decimals="-3" id="f-394" unitRef="usd">41522000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations contextRef="c-2" decimals="-3" id="f-395" unitRef="usd">21383000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations contextRef="c-22" decimals="-3" id="f-396" unitRef="usd">41522000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsDisposalGroupIncludingDiscontinuedOperations contextRef="c-2" decimals="-3" id="f-397" unitRef="usd">15319000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsDisposalGroupIncludingDiscontinuedOperations>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsDisposalGroupIncludingDiscontinuedOperations contextRef="c-22" decimals="-3" id="f-398" unitRef="usd">28048000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsDisposalGroupIncludingDiscontinuedOperations>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsDisposalGroupIncludingDiscontinuedOperations contextRef="c-2" decimals="-3" id="f-399" unitRef="usd">15319000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsDisposalGroupIncludingDiscontinuedOperations>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsDisposalGroupIncludingDiscontinuedOperations contextRef="c-22" decimals="-3" id="f-400" unitRef="usd">28048000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsDisposalGroupIncludingDiscontinuedOperations>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents contextRef="c-2" decimals="-3" id="f-401" unitRef="usd">6064000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents contextRef="c-22" decimals="-3" id="f-402" unitRef="usd">13474000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents contextRef="c-2" decimals="-3" id="f-403" unitRef="usd">6064000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents contextRef="c-22" decimals="-3" id="f-404" unitRef="usd">13474000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:InterestPaidNet contextRef="c-4" decimals="-3" id="f-405" unitRef="usd">536000</us-gaap:InterestPaidNet>
    <us-gaap:InterestPaidNet contextRef="c-5" decimals="-3" id="f-406" unitRef="usd">755000</us-gaap:InterestPaidNet>
    <us-gaap:InterestPaidNet contextRef="c-1" decimals="-3" id="f-407" unitRef="usd">1182000</us-gaap:InterestPaidNet>
    <us-gaap:InterestPaidNet contextRef="c-6" decimals="-3" id="f-408" unitRef="usd">1712000</us-gaap:InterestPaidNet>
    <us-gaap:IncomeTaxesPaidNet contextRef="c-4" decimals="-3" id="f-409" unitRef="usd">1050000</us-gaap:IncomeTaxesPaidNet>
    <us-gaap:IncomeTaxesPaidNet contextRef="c-5" decimals="-3" id="f-410" unitRef="usd">17000</us-gaap:IncomeTaxesPaidNet>
    <us-gaap:IncomeTaxesPaidNet contextRef="c-1" decimals="-3" id="f-411" unitRef="usd">1406000</us-gaap:IncomeTaxesPaidNet>
    <us-gaap:IncomeTaxesPaidNet contextRef="c-6" decimals="-3" id="f-412" unitRef="usd">549000</us-gaap:IncomeTaxesPaidNet>
    <us-gaap:IncreaseDecreaseInAccountsReceivable contextRef="c-4" decimals="-3" id="f-413" unitRef="usd">8160000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable contextRef="c-5" decimals="-3" id="f-414" unitRef="usd">605000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable contextRef="c-1" decimals="-3" id="f-415" unitRef="usd">8324000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable contextRef="c-6" decimals="-3" id="f-416" unitRef="usd">-16663000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInInventories contextRef="c-4" decimals="-3" id="f-417" unitRef="usd">-5879000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories contextRef="c-5" decimals="-3" id="f-418" unitRef="usd">-5679000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories contextRef="c-1" decimals="-3" id="f-419" unitRef="usd">-3770000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories contextRef="c-6" decimals="-3" id="f-420" unitRef="usd">-5951000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInPrepaidExpense contextRef="c-4" decimals="-3" id="f-421" unitRef="usd">-600000</us-gaap:IncreaseDecreaseInPrepaidExpense>
    <us-gaap:IncreaseDecreaseInPrepaidExpense contextRef="c-5" decimals="-3" id="f-422" unitRef="usd">-177000</us-gaap:IncreaseDecreaseInPrepaidExpense>
    <us-gaap:IncreaseDecreaseInPrepaidExpense contextRef="c-1" decimals="-3" id="f-423" unitRef="usd">-920000</us-gaap:IncreaseDecreaseInPrepaidExpense>
    <us-gaap:IncreaseDecreaseInPrepaidExpense contextRef="c-6" decimals="-3" id="f-424" unitRef="usd">-157000</us-gaap:IncreaseDecreaseInPrepaidExpense>
    <us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities contextRef="c-4" decimals="-3" id="f-425" unitRef="usd">1056000</us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities contextRef="c-5" decimals="-3" id="f-426" unitRef="usd">4250000</us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities contextRef="c-1" decimals="-3" id="f-427" unitRef="usd">-3240000</us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities contextRef="c-6" decimals="-3" id="f-428" unitRef="usd">-4532000</us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities>
    <wprt:IncreaseDecreaseInWarrantyLiability contextRef="c-4" decimals="-3" id="f-429" unitRef="usd">92000</wprt:IncreaseDecreaseInWarrantyLiability>
    <wprt:IncreaseDecreaseInWarrantyLiability contextRef="c-5" decimals="-3" id="f-430" unitRef="usd">-537000</wprt:IncreaseDecreaseInWarrantyLiability>
    <wprt:IncreaseDecreaseInWarrantyLiability contextRef="c-1" decimals="-3" id="f-431" unitRef="usd">5000</wprt:IncreaseDecreaseInWarrantyLiability>
    <wprt:IncreaseDecreaseInWarrantyLiability contextRef="c-6" decimals="-3" id="f-432" unitRef="usd">-1098000</wprt:IncreaseDecreaseInWarrantyLiability>
    <us-gaap:IncreaseDecreaseInOperatingCapital contextRef="c-4" decimals="-3" id="f-433" unitRef="usd">533000</us-gaap:IncreaseDecreaseInOperatingCapital>
    <us-gaap:IncreaseDecreaseInOperatingCapital contextRef="c-5" decimals="-3" id="f-434" unitRef="usd">-8964000</us-gaap:IncreaseDecreaseInOperatingCapital>
    <us-gaap:IncreaseDecreaseInOperatingCapital contextRef="c-1" decimals="-3" id="f-435" unitRef="usd">6869000</us-gaap:IncreaseDecreaseInOperatingCapital>
    <us-gaap:IncreaseDecreaseInOperatingCapital contextRef="c-6" decimals="-3" id="f-436" unitRef="usd">-17141000</us-gaap:IncreaseDecreaseInOperatingCapital>
    <us-gaap:NatureOfOperations contextRef="c-1" id="f-437">&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;1.          Company organization and operations:&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%"&gt; &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="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;Westport Fuel Systems Inc. (the &#x201c;Company&#x201d; or "Westport") was incorporated under the Business Corporations Act (Alberta) on March 20, 1995. Westport is a technology and innovation company. As a  supplier of alternative fuel, low-emissions transportation technologies, Westport designs, manufactures, and supplies components and systems that enable the transition from traditional fuels to cleaner energy solutions for heavy-duty commercial vehicles and other on- and off-road applications. The Company has a 55% ownership in Cespira, a joint venture with Volvo Group ("Volvo") formed in 2024. Cespira is committed to advancing the development and commercialization of the HPDI&lt;/span&gt;&lt;span style="color:#000000;font-family:'null',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;&#x2122;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt; fuel system, a fully OEM-integrated gaseous fuel systems that enables heavy-duty diesel engines to operate with a range of clean-burning fuels including natural gas, renewable natural gas ("RNG"), hydrogen ("H2") and other alternative fuels. Westport supplies its products directly to original equipment manufacturers (&#x201c;OEMs&#x201d;) and Tier 1 and Tier 2 OEM suppliers.&lt;/span&gt;&lt;/div&gt;</us-gaap:NatureOfOperations>
    <us-gaap:EquityMethodInvestmentOwnershipPercentage contextRef="c-57" decimals="2" id="f-438" unitRef="number">0.55</us-gaap:EquityMethodInvestmentOwnershipPercentage>
    <us-gaap:SubstantialDoubtAboutGoingConcernTextBlock contextRef="c-1" id="f-439">&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:112%"&gt;2.          Liquidity and going concern:&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="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;For the six months ended June 30, 2025, the Company reported operating losses of $2,788. The Company continues to use cash to support its business activities and support the growth of Cespira. As at June&#160;30, 2025, the Company had cash and cash equivalents of $6,064 in continuing operations ($21,383 inclusive of cash and cash equivalents classified as held for sale) and long-term debt borrowed from Export Development Canada ("EDC") of $4,882, net of deferred financing fees, of which $3,905&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:112%"&gt; &lt;/span&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;was current. Under the term loan with EDC, the Company has a cash covenant with a consolidated cash requirement of $15,000. If the Company's cash and cash equivalents fall below the minimum cash requirement, the Company may be required to repay the outstanding amount of the term loan.&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="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;On September 13, 2024, the Company announced an at-the-market equity offering program (the "ATM Program") that allows the Company to issue up to $35,000 in common shares from treasury to the public from time to time, at the Company's discretion and subject to regulatory requirements. As at June&#160;30, 2025, no shares were issued from treasury. The Company's Base Shelf Prospectus expired in June 2025.&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="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;On July 29, 2025, the Company closed the sale of the Light-Duty segment to a wholly-owned investment vehicle of Heliaca Investments ("Purchaser"), a Netherlands based investment firm supported by Ramphastos Investments Management B.V., a prominent Dutch venture capital and private equity firm for net proceeds of approximately $62,513 (&#x20ac;53,600) (refer to note 5 for details).&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="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;In connection with preparing consolidated financial statements for each annual and interim reporting period, the Company is required to evaluate whether there are conditions or events, considered in aggregate, that raise substantial doubt about the Company&#x2019;s ability to continue as a going concern within one year after the date the consolidated financial statements are issued. Substantial doubt exists when conditions and events, considered in aggregate, indicate that it is probable a company will be unable to meet its obligations as they become due within one year after the date the consolidated financial statements are issued. This evaluation initially does not take into consideration the potential mitigating effect of management&#x2019;s plans and actions that have not been fully implemented as of the date the consolidated financial statements are issued. When substantial doubt exists, management evaluates whether the mitigating effect of its plans sufficiently alleviates substantial doubt about the Company&#x2019;s ability to continue as a going concern. The mitigating effect of management&#x2019;s plans, however, is only considered if both: (1) it is probable the plans will be effectively implemented within one year after the date the consolidated financial statements are issued; and (2) it is probable the plans, when implemented, will mitigate the relevant conditions or events that raise substantial doubt about the Company&#x2019;s ability to continue as a going concern within one year after the date the consolidated financial statements are issued.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;2.          Liquidity and going concern (continued):&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="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Based on the Company's projected capital expenditures, debt servicing obligations and operating requirements under its current business plan, management is projecting that its existing cash and cash equivalents will not be sufficient to fund its operations through the next twelve months from the date of the issuance of these condensed consolidated interim financial statements ("interim financial statements"). These conditions raise substantial doubt about the Company's ability to continue as a going concern within one year after the date these interim financial statements are issued.&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="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;Management is currently evaluating several different options to improve Westport's liquidity position, including raising funds from the public markets, borrowing debt or other financing alternatives.  These plans are not final and are subject to market and other conditions not the Company's control. As such, there can be no assurances that Westport will be successful in obtaining sufficient funding. Accordingly, the Company concluded under the accounting standards that these plans do not alleviate the substantial doubt about Westport's ability to continue as a going concern.&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="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;These interim financial statements have been prepared on a going concern basis, which contemplates the realization of assets and satisfaction of liabilities in the ordinary course of business. The interim financial statements do not include any adjustments related to the recoverability and classification of recorded asset amounts or the amounts and classification of liabilities that may be necessary if the Company were unable to continue as a going concern.&lt;/span&gt;&lt;/div&gt;</us-gaap:SubstantialDoubtAboutGoingConcernTextBlock>
    <us-gaap:OperatingIncomeLoss contextRef="c-1" decimals="-3" id="f-440" unitRef="usd">-2788000</us-gaap:OperatingIncomeLoss>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents contextRef="c-2" decimals="-3" id="f-441" unitRef="usd">6064000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents contextRef="c-58" decimals="-3" id="f-442" unitRef="usd">21383000</us-gaap:DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents>
    <us-gaap:DebtLongtermAndShorttermCombinedAmount contextRef="c-2" decimals="-3" id="f-443" unitRef="usd">4882000</us-gaap:DebtLongtermAndShorttermCombinedAmount>
    <us-gaap:LongTermDebtAndCapitalLeaseObligationsCurrent contextRef="c-59" decimals="-3" id="f-444" unitRef="usd">3905000</us-gaap:LongTermDebtAndCapitalLeaseObligationsCurrent>
    <wprt:DebtInstrumentCovenantMinimumCashRequirement contextRef="c-2" decimals="-3" id="f-445" unitRef="usd">15000000</wprt:DebtInstrumentCovenantMinimumCashRequirement>
    <us-gaap:StockIssuedDuringPeriodSharesTreasuryStockReissued contextRef="c-60" decimals="-3" id="f-446" unitRef="shares">35000000</us-gaap:StockIssuedDuringPeriodSharesTreasuryStockReissued>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationConsideration contextRef="c-61" decimals="-3" id="f-447" unitRef="usd">62513000</us-gaap:DisposalGroupIncludingDiscontinuedOperationConsideration>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationConsideration contextRef="c-61" decimals="-3" id="f-448" unitRef="eur">53600000</us-gaap:DisposalGroupIncludingDiscontinuedOperationConsideration>
    <us-gaap:BasisOfAccounting contextRef="c-1" id="f-449">&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:112%"&gt;3.          Basis of preparation:&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:112%"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(a)&#160;&#160;&#160;&#160;Basis of presentation:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:117%"&gt;The interim financial statements have been prepared by the Company and do not include all of the information and disclosures required by accounting principles generally accepted in the United States ("GAAP"). In the opinion of management, all normal recurring accruals and adjustments considered necessary for a fair presentation have been included. The results for the three and six months ended June 30, 2025 are not necessarily indicative of the results that may be expected for the year ending December&#160;31, 2025. The interim financial statements should be read in conjunction with the audited consolidated financial statements and notes to the consolidated financial statements for the year ended December&#160;31, 2024.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:118%"&gt;The preparation of financial statements in conformity with GAAP requires management to make estimates and assumptions that affect the amounts reported in the interim financial statements and accompanying notes. Actual results could differ from those estimates. Certain prior period figures have been adjusted to conform to current period presentation in the interim financial statements.&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="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(b)&#160;&#160;&#160;&#160;Foreign currency translation:&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="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company&#x2019;s functional currency is the Canadian dollar and its reporting currency for its interim financial statement presentation is the United States dollar ("U.S. Dollar"). The functional currencies for the Company's significant subsidiaries include the following: U.S. Dollar, Canadian dollar, Euro, Argentina Peso, Chinese Renminbi (&#x201c;RMB&#x201d;) and Polish Zloty. The Company translates assets and liabilities of non-U.S. dollar functional currency operations using the period end exchange rates,&#160;shareholders&#x2019; equity balances using the weighted average of historical exchange rates, and revenues and expenses using the monthly average rate for the period with the&#160;resulting exchange differences&#160;recognized in other comprehensive income (loss).&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;3.          Basis of preparation (continued):&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="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Transactions that are denominated in currencies other than the functional currencies of the Company&#x2019;s or its subsidiaries' operations are translated at the rates in effect on the date of the transaction.&#160;Foreign currency denominated monetary assets and liabilities are translated to the applicable functional currency&#160;at the exchange rates in effect on the balance sheet date. Non-monetary assets and liabilities are translated at the historical exchange rate. All foreign exchange gains and losses are recognized in the condensed consolidated interim statements of operations, except for the translation gains and losses arising from available-for-sale instruments, which are recorded through other comprehensive income (loss) until realized through disposal or impairment.&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="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Except as otherwise noted, all amounts in these interim financial statements are presented in thousands of U.S. dollars. For the periods presented, the Company used the following exchange rates:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:20.339%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.381%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.534%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.381%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.534%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.381%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.534%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.381%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.534%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.381%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.534%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.386%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Period&#160;ended&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Average for the three months ended&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Average for the six months ended&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;June 30, 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;December 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;June 30, 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;June 30, 2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;June 30, 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;June 30, 2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Canadian Dollar&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.36&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.44&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.38&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.37&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.41&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.37&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Euro&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.85&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.96&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.88&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.93&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.91&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.93&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;RMB&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7.17&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7.30&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7.23&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7.24&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7.25&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7.25&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Polish Zloty&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.61&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4.12&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.75&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.99&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.87&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4.01&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Swedish Krona&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9.49&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11.03&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9.66&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10.68&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10.13&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10.49&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Indian Rupee&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;85.75&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;85.60&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;85.56&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;83.42&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;86.09&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;83.48&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Argentina Peso&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,192.11&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,032.12&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,145.65&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;885.31&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,098.03&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;903.40&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(c)&#160;&#160;&#160;&#160;Held-for-sale disposal group and discontinued operations:&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="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company classifies a component of an entity as a held-for-sale disposal group when it has been disposed of during the period, or it has met all of the held-for-sale criteria under &lt;/span&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Topic 205 - Presentation of Financial Statements&lt;/span&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; at the balance sheet reporting date. Held-for-sale disposal groups are measured at the lower of its carrying amount and fair value less cost to sell. If the fair value less cost to sell is lower than its carrying amount, a loss is recognized to write down the carrying amount of the disposal group as a whole.&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="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;After a disposal group has been classified as held-for-sale, management may decide to reverse its plan to divest, or circumstances may change so that the disposal group no longer meets the held-for-sale criteria. In such instances, the Company would reclassify the disposal group's assets and liabilities on the balance sheet as held-and-used and remeasure the assets on the date of reclassification.&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="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A component that has been disposed of or is held-for-sale is reported in discontinued operations if its disposition represents a strategic shift and has (or will have) a major effect on the entity's operations and financial results. Discontinued operations are reported separately from the Company's continuing operations on the balance sheet, income statement, and statement of cash flows. For comparative purposes, the Company adjusted the prior periods presented in the interim financial statements to reflect the effect of operations discontinued in the current period. The Company's interim financial statements eliminated its intercompany balances with its discontinued operations as the intercompany balances will be settled upon disposal.&lt;/span&gt;&lt;/div&gt;</us-gaap:BasisOfAccounting>
    <us-gaap:BasisOfAccountingPolicyPolicyTextBlock contextRef="c-1" id="f-450">Basis of presentation:&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:117%"&gt;The interim financial statements have been prepared by the Company and do not include all of the information and disclosures required by accounting principles generally accepted in the United States ("GAAP"). In the opinion of management, all normal recurring accruals and adjustments considered necessary for a fair presentation have been included. The results for the three and six months ended June 30, 2025 are not necessarily indicative of the results that may be expected for the year ending December&#160;31, 2025. The interim financial statements should be read in conjunction with the audited consolidated financial statements and notes to the consolidated financial statements for the year ended December&#160;31, 2024.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:118%"&gt;The preparation of financial statements in conformity with GAAP requires management to make estimates and assumptions that affect the amounts reported in the interim financial statements and accompanying notes. Actual results could differ from those estimates. Certain prior period figures have been adjusted to conform to current period presentation in the interim financial statements.&lt;/span&gt;&lt;/div&gt;</us-gaap:BasisOfAccountingPolicyPolicyTextBlock>
    <us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock contextRef="c-1" id="f-451">Foreign currency translation:&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company&#x2019;s functional currency is the Canadian dollar and its reporting currency for its interim financial statement presentation is the United States dollar ("U.S. Dollar"). The functional currencies for the Company's significant subsidiaries include the following: U.S. Dollar, Canadian dollar, Euro, Argentina Peso, Chinese Renminbi (&#x201c;RMB&#x201d;) and Polish Zloty. The Company translates assets and liabilities of non-U.S. dollar functional currency operations using the period end exchange rates,&#160;shareholders&#x2019; equity balances using the weighted average of historical exchange rates, and revenues and expenses using the monthly average rate for the period with the&#160;resulting exchange differences&#160;recognized in other comprehensive income (loss).&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Transactions that are denominated in currencies other than the functional currencies of the Company&#x2019;s or its subsidiaries' operations are translated at the rates in effect on the date of the transaction.&#160;Foreign currency denominated monetary assets and liabilities are translated to the applicable functional currency&#160;at the exchange rates in effect on the balance sheet date. Non-monetary assets and liabilities are translated at the historical exchange rate. All foreign exchange gains and losses are recognized in the condensed consolidated interim statements of operations, except for the translation gains and losses arising from available-for-sale instruments, which are recorded through other comprehensive income (loss) until realized through disposal or impairment.&lt;/span&gt;&lt;/div&gt;</us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock>
    <wprt:ScheduleOfForeignCurrencyExchangeRateTranslationTableTextBlock contextRef="c-1" id="f-452">For the periods presented, the Company used the following exchange rates:&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:20.339%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.381%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.534%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.381%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.534%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.381%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.534%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.381%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.534%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.381%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.534%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.386%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Period&#160;ended&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Average for the three months ended&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Average for the six months ended&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;June 30, 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;December 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;June 30, 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;June 30, 2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;June 30, 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;June 30, 2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Canadian Dollar&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.36&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.44&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.38&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.37&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.41&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.37&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Euro&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.85&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.96&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.88&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.93&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.91&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.93&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;RMB&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7.17&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7.30&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7.23&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7.24&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7.25&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7.25&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Polish Zloty&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.61&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4.12&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.75&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.99&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.87&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4.01&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Swedish Krona&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9.49&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11.03&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9.66&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10.68&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10.13&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10.49&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Indian Rupee&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;85.75&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;85.60&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;85.56&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;83.42&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;86.09&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;83.48&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Argentina Peso&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,192.11&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,032.12&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,145.65&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;885.31&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,098.03&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;903.40&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</wprt:ScheduleOfForeignCurrencyExchangeRateTranslationTableTextBlock>
    <us-gaap:ForeignCurrencyExchangeRateTranslation1 contextRef="c-62" decimals="2" id="f-453" unitRef="number">1.36</us-gaap:ForeignCurrencyExchangeRateTranslation1>
    <us-gaap:ForeignCurrencyExchangeRateTranslation1 contextRef="c-63" decimals="2" id="f-454" unitRef="number">1.44</us-gaap:ForeignCurrencyExchangeRateTranslation1>
    <wprt:AverageForeignCurrencyExchangeRateTranslation1 contextRef="c-64" decimals="2" id="f-455" unitRef="number">1.38</wprt:AverageForeignCurrencyExchangeRateTranslation1>
    <wprt:AverageForeignCurrencyExchangeRateTranslation1 contextRef="c-65" decimals="2" id="f-456" unitRef="number">1.37</wprt:AverageForeignCurrencyExchangeRateTranslation1>
    <wprt:AverageForeignCurrencyExchangeRateTranslation1 contextRef="c-66" decimals="2" id="f-457" unitRef="number">1.41</wprt:AverageForeignCurrencyExchangeRateTranslation1>
    <wprt:AverageForeignCurrencyExchangeRateTranslation1 contextRef="c-67" decimals="2" id="f-458" unitRef="number">1.37</wprt:AverageForeignCurrencyExchangeRateTranslation1>
    <us-gaap:ForeignCurrencyExchangeRateTranslation1 contextRef="c-68" decimals="2" id="f-459" unitRef="number">0.85</us-gaap:ForeignCurrencyExchangeRateTranslation1>
    <us-gaap:ForeignCurrencyExchangeRateTranslation1 contextRef="c-69" decimals="2" id="f-460" unitRef="number">0.96</us-gaap:ForeignCurrencyExchangeRateTranslation1>
    <wprt:AverageForeignCurrencyExchangeRateTranslation1 contextRef="c-70" decimals="2" id="f-461" unitRef="number">0.88</wprt:AverageForeignCurrencyExchangeRateTranslation1>
    <wprt:AverageForeignCurrencyExchangeRateTranslation1 contextRef="c-71" decimals="2" id="f-462" unitRef="number">0.93</wprt:AverageForeignCurrencyExchangeRateTranslation1>
    <wprt:AverageForeignCurrencyExchangeRateTranslation1 contextRef="c-72" decimals="2" id="f-463" unitRef="number">0.91</wprt:AverageForeignCurrencyExchangeRateTranslation1>
    <wprt:AverageForeignCurrencyExchangeRateTranslation1 contextRef="c-73" decimals="2" id="f-464" unitRef="number">0.93</wprt:AverageForeignCurrencyExchangeRateTranslation1>
    <us-gaap:ForeignCurrencyExchangeRateTranslation1 contextRef="c-74" decimals="2" id="f-465" unitRef="number">7.17</us-gaap:ForeignCurrencyExchangeRateTranslation1>
    <us-gaap:ForeignCurrencyExchangeRateTranslation1 contextRef="c-75" decimals="2" id="f-466" unitRef="number">7.30</us-gaap:ForeignCurrencyExchangeRateTranslation1>
    <wprt:AverageForeignCurrencyExchangeRateTranslation1 contextRef="c-76" decimals="2" id="f-467" unitRef="number">7.23</wprt:AverageForeignCurrencyExchangeRateTranslation1>
    <wprt:AverageForeignCurrencyExchangeRateTranslation1 contextRef="c-77" decimals="2" id="f-468" unitRef="number">7.24</wprt:AverageForeignCurrencyExchangeRateTranslation1>
    <wprt:AverageForeignCurrencyExchangeRateTranslation1 contextRef="c-78" decimals="2" id="f-469" unitRef="number">7.25</wprt:AverageForeignCurrencyExchangeRateTranslation1>
    <wprt:AverageForeignCurrencyExchangeRateTranslation1 contextRef="c-79" decimals="2" id="f-470" unitRef="number">7.25</wprt:AverageForeignCurrencyExchangeRateTranslation1>
    <us-gaap:ForeignCurrencyExchangeRateTranslation1 contextRef="c-80" decimals="2" id="f-471" unitRef="number">3.61</us-gaap:ForeignCurrencyExchangeRateTranslation1>
    <us-gaap:ForeignCurrencyExchangeRateTranslation1 contextRef="c-81" decimals="2" id="f-472" unitRef="number">4.12</us-gaap:ForeignCurrencyExchangeRateTranslation1>
    <wprt:AverageForeignCurrencyExchangeRateTranslation1 contextRef="c-82" decimals="2" id="f-473" unitRef="number">3.75</wprt:AverageForeignCurrencyExchangeRateTranslation1>
    <wprt:AverageForeignCurrencyExchangeRateTranslation1 contextRef="c-83" decimals="2" id="f-474" unitRef="number">3.99</wprt:AverageForeignCurrencyExchangeRateTranslation1>
    <wprt:AverageForeignCurrencyExchangeRateTranslation1 contextRef="c-84" decimals="2" id="f-475" unitRef="number">3.87</wprt:AverageForeignCurrencyExchangeRateTranslation1>
    <wprt:AverageForeignCurrencyExchangeRateTranslation1 contextRef="c-85" decimals="2" id="f-476" unitRef="number">4.01</wprt:AverageForeignCurrencyExchangeRateTranslation1>
    <us-gaap:ForeignCurrencyExchangeRateTranslation1 contextRef="c-86" decimals="2" id="f-477" unitRef="number">9.49</us-gaap:ForeignCurrencyExchangeRateTranslation1>
    <us-gaap:ForeignCurrencyExchangeRateTranslation1 contextRef="c-87" decimals="2" id="f-478" unitRef="number">11.03</us-gaap:ForeignCurrencyExchangeRateTranslation1>
    <wprt:AverageForeignCurrencyExchangeRateTranslation1 contextRef="c-88" decimals="2" id="f-479" unitRef="number">9.66</wprt:AverageForeignCurrencyExchangeRateTranslation1>
    <wprt:AverageForeignCurrencyExchangeRateTranslation1 contextRef="c-89" decimals="2" id="f-480" unitRef="number">10.68</wprt:AverageForeignCurrencyExchangeRateTranslation1>
    <wprt:AverageForeignCurrencyExchangeRateTranslation1 contextRef="c-90" decimals="2" id="f-481" unitRef="number">10.13</wprt:AverageForeignCurrencyExchangeRateTranslation1>
    <wprt:AverageForeignCurrencyExchangeRateTranslation1 contextRef="c-91" decimals="2" id="f-482" unitRef="number">10.49</wprt:AverageForeignCurrencyExchangeRateTranslation1>
    <us-gaap:ForeignCurrencyExchangeRateTranslation1 contextRef="c-92" decimals="2" id="f-483" unitRef="number">85.75</us-gaap:ForeignCurrencyExchangeRateTranslation1>
    <us-gaap:ForeignCurrencyExchangeRateTranslation1 contextRef="c-93" decimals="2" id="f-484" unitRef="number">85.60</us-gaap:ForeignCurrencyExchangeRateTranslation1>
    <wprt:AverageForeignCurrencyExchangeRateTranslation1 contextRef="c-94" decimals="2" id="f-485" unitRef="number">85.56</wprt:AverageForeignCurrencyExchangeRateTranslation1>
    <wprt:AverageForeignCurrencyExchangeRateTranslation1 contextRef="c-95" decimals="2" id="f-486" unitRef="number">83.42</wprt:AverageForeignCurrencyExchangeRateTranslation1>
    <wprt:AverageForeignCurrencyExchangeRateTranslation1 contextRef="c-96" decimals="2" id="f-487" unitRef="number">86.09</wprt:AverageForeignCurrencyExchangeRateTranslation1>
    <wprt:AverageForeignCurrencyExchangeRateTranslation1 contextRef="c-97" decimals="2" id="f-488" unitRef="number">83.48</wprt:AverageForeignCurrencyExchangeRateTranslation1>
    <us-gaap:ForeignCurrencyExchangeRateTranslation1 contextRef="c-98" decimals="2" id="f-489" unitRef="number">1192.11</us-gaap:ForeignCurrencyExchangeRateTranslation1>
    <us-gaap:ForeignCurrencyExchangeRateTranslation1 contextRef="c-99" decimals="2" id="f-490" unitRef="number">1032.12</us-gaap:ForeignCurrencyExchangeRateTranslation1>
    <wprt:AverageForeignCurrencyExchangeRateTranslation1 contextRef="c-100" decimals="2" id="f-491" unitRef="number">1145.65</wprt:AverageForeignCurrencyExchangeRateTranslation1>
    <wprt:AverageForeignCurrencyExchangeRateTranslation1 contextRef="c-101" decimals="2" id="f-492" unitRef="number">885.31</wprt:AverageForeignCurrencyExchangeRateTranslation1>
    <wprt:AverageForeignCurrencyExchangeRateTranslation1 contextRef="c-102" decimals="2" id="f-493" unitRef="number">1098.03</wprt:AverageForeignCurrencyExchangeRateTranslation1>
    <wprt:AverageForeignCurrencyExchangeRateTranslation1 contextRef="c-103" decimals="2" id="f-494" unitRef="number">903.40</wprt:AverageForeignCurrencyExchangeRateTranslation1>
    <wprt:HeldForSaleDisposalGroupAndDiscontinuedOperationsPolicyPolicyTextBlock contextRef="c-1" id="f-495">Held-for-sale disposal group and discontinued operations:&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company classifies a component of an entity as a held-for-sale disposal group when it has been disposed of during the period, or it has met all of the held-for-sale criteria under &lt;/span&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Topic 205 - Presentation of Financial Statements&lt;/span&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; at the balance sheet reporting date. Held-for-sale disposal groups are measured at the lower of its carrying amount and fair value less cost to sell. If the fair value less cost to sell is lower than its carrying amount, a loss is recognized to write down the carrying amount of the disposal group as a whole.&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="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;After a disposal group has been classified as held-for-sale, management may decide to reverse its plan to divest, or circumstances may change so that the disposal group no longer meets the held-for-sale criteria. In such instances, the Company would reclassify the disposal group's assets and liabilities on the balance sheet as held-and-used and remeasure the assets on the date of reclassification.&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="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A component that has been disposed of or is held-for-sale is reported in discontinued operations if its disposition represents a strategic shift and has (or will have) a major effect on the entity's operations and financial results. Discontinued operations are reported separately from the Company's continuing operations on the balance sheet, income statement, and statement of cash flows. For comparative purposes, the Company adjusted the prior periods presented in the interim financial statements to reflect the effect of operations discontinued in the current period. The Company's interim financial statements eliminated its intercompany balances with its discontinued operations as the intercompany balances will be settled upon disposal.&lt;/span&gt;&lt;/div&gt;</wprt:HeldForSaleDisposalGroupAndDiscontinuedOperationsPolicyPolicyTextBlock>
    <us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock contextRef="c-1" id="f-496">&lt;div&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;4.          New accounting pronouncements&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:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Upcoming accounting standards not yet adopted:&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In December 2023, the FASB issued ASU 2023-09, "Income Taxes (Topic 740): Improvements in Income Tax Disclosures" to enhance the transparency and decision usefulness of income tax disclosures. This amendment requires public companies to disclose specific categories in the rate reconciliation and provide additional information for reconciling items that meet a quantitative threshold. Additionally, under the amendment entities are required to disclose the amount of income taxes paid disaggregated by federal, state and foreign taxes, as well as disaggregated by material individual jurisdictions. Finally, the amendment requires entities to disclose income from continuing operations before income tax expense disaggregated between domestic and foreign and income tax expense from continuing operations disaggregated by federal, state and foreign. This guidance is effective for annual reporting periods beginning after December 15, 2024. While this guidance may have an impact on the disclosures, the Company does not expect this guidance to have a material impact on its  financial position, operations, and cash flows.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In November 2024, the FASB issued ASU 2024-03, "Income Statement - Reporting Comprehensive Income - Expense Disaggregation Disclosures (Subtopic 220-40): Disaggregation of Income Statement Expenses." It requires entities to disclose, in the notes to the financial statements, specified information related to certain costs and expenses disaggregated by type. The standard improves transparency by providing more detailed information about the component of costs and expenses that would enable users to better understand the major components of an entity's income statement by referencing disclosures in the notes to financial statements. This guidance is effective for annual reporting periods beginning after December 15, 2026. While this guidance may have an impact on the disclosures, the Company does not expect this guidance to have a material impact on its  financial position, operations, and cash flows.&lt;/span&gt;&lt;/div&gt;</us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock>
    <us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock contextRef="c-1" id="f-497">&lt;div style="margin-bottom:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Upcoming accounting standards not yet adopted:&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In December 2023, the FASB issued ASU 2023-09, "Income Taxes (Topic 740): Improvements in Income Tax Disclosures" to enhance the transparency and decision usefulness of income tax disclosures. This amendment requires public companies to disclose specific categories in the rate reconciliation and provide additional information for reconciling items that meet a quantitative threshold. Additionally, under the amendment entities are required to disclose the amount of income taxes paid disaggregated by federal, state and foreign taxes, as well as disaggregated by material individual jurisdictions. Finally, the amendment requires entities to disclose income from continuing operations before income tax expense disaggregated between domestic and foreign and income tax expense from continuing operations disaggregated by federal, state and foreign. This guidance is effective for annual reporting periods beginning after December 15, 2024. While this guidance may have an impact on the disclosures, the Company does not expect this guidance to have a material impact on its  financial position, operations, and cash flows.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In November 2024, the FASB issued ASU 2024-03, "Income Statement - Reporting Comprehensive Income - Expense Disaggregation Disclosures (Subtopic 220-40): Disaggregation of Income Statement Expenses." It requires entities to disclose, in the notes to the financial statements, specified information related to certain costs and expenses disaggregated by type. The standard improves transparency by providing more detailed information about the component of costs and expenses that would enable users to better understand the major components of an entity's income statement by referencing disclosures in the notes to financial statements. This guidance is effective for annual reporting periods beginning after December 15, 2026. While this guidance may have an impact on the disclosures, the Company does not expect this guidance to have a material impact on its  financial position, operations, and cash flows.&lt;/span&gt;&lt;/div&gt;</us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock>
    <us-gaap:DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock contextRef="c-1" id="f-498">&lt;div&gt;&lt;span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;5.          Held-for-sale disposal group and discontinued operations:&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On May 15, 2025, the Company held its Annual General and Special Meeting of Shareholders. At the meeting, shareholders approved management's plan to sell the Light-Duty segment in accordance with the terms of the sale and purchase agreement ("SPA") dated March 30, 2025.&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="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As at June 30, 2025, the Company accounted for the Light-Duty segment as a held-for-sale disposal group and presented its financial position and operating results in discontinued operations for both the current and comparative periods. As part of the terms of the transaction, the long-term debt with UniCredit S.p.A., Deutsche Bank, Banca de Credito Cooperativo, and Rabobank in Westport Fuel Systems Italia S.r.l and its subsidiaries will remain with the disposal group. As a result of classifying the Light-Duty segment as held-for-sale, the Company recorded a write-down loss of $30,183 in discontinued operations.&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="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Light-Duty's total additions to long-lived assets, excluding business combinations for the three and six months ended June 30, 2025 was $1,620 and $3,926, respectively (three and six months ended June 30, 2024 was $4,176 and $8,325).&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="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;On July 14, 2025, the Company entered into a short-term loan with the Purchaser for $5,831 (&#x20ac;5,000). The loan was subsequently repaid on July 29, 2025.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;5.          Assets and liabilities held for sale (continued):&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="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;On July 29, 2025, the Company closed the sale of its Light-Duty segment to the Purchaser. The transaction provided $62,513 (&#x20ac;53,600) in net proceeds received as $41,170 (&#x20ac;35,300) in initial cash proceeds, $8,514 (&#x20ac;7,300) in deferred payments expected to be received in September 2025 and  $12,829 (&#x20ac;11,000) in proceeds held in escrow. Net proceeds are after the deduction of net debt in the Light-Duty segment and certain other closing costs. Further, up to $3,790 (&#x20ac;3,250) in potential earnouts are available if certain conditions are achieved in accordance with terms and conditions in the sale and purchase agreement. The proceeds held in escrow will be released to the Company in four tranches by year-end 2025, early 2026, early 2027 and mid-year 2027. Purchase price adjustments may impact the final proceeds received from the Purchaser and are customary in nature.&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="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Major assets and liabilities of the discontinued operations are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&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&gt;&lt;td style="width:60.303%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:17.613%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:17.616%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;June 30, 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;December 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Cash&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;15,319&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;22,892&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Accounts receivable&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;67,947&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;54,316&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Inventories&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;53,383&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;46,858&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Prepaid expenses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;5,772&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;4,332&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;142,421&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;128,398&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Long-term investments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;3,331&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,866&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Property, plant, and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;43,775&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;38,836&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Operating lease right-of-use asset&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;21,744&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;18,196&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Intangible assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;5,179&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;5,184&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Deferred income tax assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;10,196&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;9,695&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Goodwill&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;3,257&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,876&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Other long-term assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;1,999&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;1,842&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;89,481&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;79,495&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Valuation allowance from classifying the discontinued operations as held-for-sale&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;(30,183)&lt;/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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Total assets classified as held for sale&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;201,719&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;207,893&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:14pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Accounts payable and accrued liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;78,048&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;68,688&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Current portion of operating lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,703&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,336&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Current portion of long-term debt&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;9,763&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;10,755&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Current portion of warranty liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;3,416&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,709&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;93,930&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;84,488&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Long-term operating lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;19,170&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;15,885&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Long-term debt&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;14,487&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;16,135&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Warranty liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;1,888&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;1,456&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Deferred income tax liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;3,588&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;4,029&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Other long-term liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;3,114&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,955&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;42,247&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;40,460&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Total liabilities classified as held for sale&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;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 #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;136,177&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;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 #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;124,948&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;5.          Assets and liabilities held for sale (continued):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;Revenue and expenses of the discontinued operation are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&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&gt;&lt;td style="width:53.870%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:9.572%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:9.572%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:9.572%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:9.578%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Three Months Ended June 30,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Six Months Ended June 30,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:14pt"&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;76,372&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;69,277&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;140,004&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;132,423&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Cost of revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;61,219&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;54,514&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;111,160&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;105,395&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Gross profit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;15,153&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;14,763&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;28,844&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;27,028&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Operating expenses:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Research and development&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,979&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;3,100&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;5,738&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;6,444&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;General and administrative&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;3,756&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;5,883&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;7,481&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;9,041&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Sales and marketing&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,854&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,478&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;5,169&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;4,644&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Foreign exchange loss&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;1,862&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;198&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,609&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;82&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Depreciation and amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;646&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;622&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;1,279&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;1,307&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;12,097&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;12,281&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;22,276&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;21,518&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Income from discontinued operations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;3,056&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,482&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;6,568&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;5,510&#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&gt;&lt;/tr&gt;&lt;tr style="height:14pt"&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Income from investment accounted for by the equity method&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;387&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;414&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;472&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;445&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Loss from classifying the discontinued operations as held-for-sale&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;(30,183)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;(30,183)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Impairment of long-lived assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;(664)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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',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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;(664)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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',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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Interest on long-term debt&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;(391)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;(438)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;(875)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;(935)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Interest and other income (loss), net of bank charges&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;133&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;88&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;503&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Income (loss) from discontinued operations before income tax&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;(27,662)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,546&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;(24,329)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;5,523&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Income tax expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;1,629&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;875&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,118&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;1,479&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Net income (loss) from discontinued operations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;(29,291)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;1,671&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;(26,447)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;4,044&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock>
    <us-gaap:DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax contextRef="c-104" decimals="-3" id="f-499" unitRef="usd">30183000</us-gaap:DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax>
    <wprt:DisposalGroupIncludingDiscontinuedOperationAdditionsToLongLivedAssets contextRef="c-104" decimals="-3" id="f-500" unitRef="usd">1620000</wprt:DisposalGroupIncludingDiscontinuedOperationAdditionsToLongLivedAssets>
    <wprt:DisposalGroupIncludingDiscontinuedOperationAdditionsToLongLivedAssets contextRef="c-105" decimals="-3" id="f-501" unitRef="usd">3926000</wprt:DisposalGroupIncludingDiscontinuedOperationAdditionsToLongLivedAssets>
    <wprt:DisposalGroupIncludingDiscontinuedOperationAdditionsToLongLivedAssets contextRef="c-106" decimals="-3" id="f-502" unitRef="usd">4176000</wprt:DisposalGroupIncludingDiscontinuedOperationAdditionsToLongLivedAssets>
    <wprt:DisposalGroupIncludingDiscontinuedOperationAdditionsToLongLivedAssets contextRef="c-107" decimals="-3" id="f-503" unitRef="usd">8325000</wprt:DisposalGroupIncludingDiscontinuedOperationAdditionsToLongLivedAssets>
    <us-gaap:DebtInstrumentFaceAmount contextRef="c-108" decimals="-3" id="f-504" unitRef="usd">5831000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentFaceAmount contextRef="c-108" decimals="-3" id="f-505" unitRef="eur">5000000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationConsideration contextRef="c-61" decimals="-3" id="f-506" unitRef="usd">62513000</us-gaap:DisposalGroupIncludingDiscontinuedOperationConsideration>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationConsideration contextRef="c-61" decimals="-3" id="f-507" unitRef="eur">53600000</us-gaap:DisposalGroupIncludingDiscontinuedOperationConsideration>
    <us-gaap:ProceedsFromDivestitureOfBusinesses contextRef="c-109" decimals="-3" id="f-508" unitRef="usd">41170000</us-gaap:ProceedsFromDivestitureOfBusinesses>
    <us-gaap:ProceedsFromDivestitureOfBusinesses contextRef="c-109" decimals="-3" id="f-509" unitRef="eur">35300000</us-gaap:ProceedsFromDivestitureOfBusinesses>
    <us-gaap:ProceedsFromDivestitureOfBusinesses contextRef="c-110" decimals="-3" id="f-510" unitRef="usd">8514000</us-gaap:ProceedsFromDivestitureOfBusinesses>
    <us-gaap:ProceedsFromDivestitureOfBusinesses contextRef="c-110" decimals="-3" id="f-511" unitRef="eur">7300000</us-gaap:ProceedsFromDivestitureOfBusinesses>
    <wprt:DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrow contextRef="c-61" decimals="-3" id="f-512" unitRef="usd">12829000</wprt:DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrow>
    <wprt:DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrow contextRef="c-61" decimals="-3" id="f-513" unitRef="eur">11000000</wprt:DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrow>
    <wprt:DisposalGroupIncludingDiscontinuedOperationEarnoutsMaximum contextRef="c-109" decimals="-3" id="f-514" unitRef="usd">3790000</wprt:DisposalGroupIncludingDiscontinuedOperationEarnoutsMaximum>
    <wprt:DisposalGroupIncludingDiscontinuedOperationEarnoutsMaximum contextRef="c-109" decimals="-3" id="f-515" unitRef="eur">3250000</wprt:DisposalGroupIncludingDiscontinuedOperationEarnoutsMaximum>
    <wprt:DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrowNumberOfTranches
      contextRef="c-61"
      decimals="INF"
      id="f-516"
      unitRef="tranche">4</wprt:DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrowNumberOfTranches>
    <us-gaap:ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock contextRef="c-1" id="f-517">&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Major assets and liabilities of the discontinued operations are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&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&gt;&lt;td style="width:60.303%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:17.613%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:17.616%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;June 30, 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;December 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Cash&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;15,319&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;22,892&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Accounts receivable&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;67,947&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;54,316&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Inventories&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;53,383&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;46,858&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Prepaid expenses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;5,772&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;4,332&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;142,421&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;128,398&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Long-term investments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;3,331&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,866&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Property, plant, and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;43,775&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;38,836&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Operating lease right-of-use asset&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;21,744&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;18,196&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Intangible assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;5,179&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;5,184&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Deferred income tax assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;10,196&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;9,695&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Goodwill&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;3,257&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,876&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Other long-term assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;1,999&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;1,842&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;89,481&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;79,495&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Valuation allowance from classifying the discontinued operations as held-for-sale&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;(30,183)&lt;/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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Total assets classified as held for sale&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;201,719&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;207,893&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:14pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Accounts payable and accrued liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;78,048&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;68,688&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Current portion of operating lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,703&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,336&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Current portion of long-term debt&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;9,763&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;10,755&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Current portion of warranty liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;3,416&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,709&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;93,930&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;84,488&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Long-term operating lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;19,170&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;15,885&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Long-term debt&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;14,487&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;16,135&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Warranty liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;1,888&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;1,456&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Deferred income tax liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;3,588&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;4,029&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Other long-term liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;3,114&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,955&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;42,247&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;40,460&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Total liabilities classified as held for sale&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;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 #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;136,177&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;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 #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;124,948&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;5.          Assets and liabilities held for sale (continued):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;Revenue and expenses of the discontinued operation are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&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&gt;&lt;td style="width:53.870%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:9.572%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:9.572%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:9.572%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:9.578%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Three Months Ended June 30,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Six Months Ended June 30,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:14pt"&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;76,372&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;69,277&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;140,004&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;132,423&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Cost of revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;61,219&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;54,514&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;111,160&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;105,395&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Gross profit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;15,153&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;14,763&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;28,844&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;27,028&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Operating expenses:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Research and development&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,979&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;3,100&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;5,738&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;6,444&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;General and administrative&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;3,756&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;5,883&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;7,481&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;9,041&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Sales and marketing&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,854&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,478&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;5,169&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;4,644&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Foreign exchange loss&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;1,862&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;198&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,609&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;82&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Depreciation and amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;646&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;622&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;1,279&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;1,307&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;12,097&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;12,281&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;22,276&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;21,518&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Income from discontinued operations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;3,056&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,482&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;6,568&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;5,510&#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&gt;&lt;/tr&gt;&lt;tr style="height:14pt"&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Income from investment accounted for by the equity method&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;387&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;414&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;472&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;445&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Loss from classifying the discontinued operations as held-for-sale&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;(30,183)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;(30,183)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Impairment of long-lived assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;(664)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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',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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;(664)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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',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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Interest on long-term debt&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;(391)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;(438)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;(875)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;(935)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Interest and other income (loss), net of bank charges&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;133&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;88&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;503&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Income (loss) from discontinued operations before income tax&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;(27,662)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,546&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;(24,329)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;5,523&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Income tax expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;1,629&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;875&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,118&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;1,479&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Net income (loss) from discontinued operations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;(29,291)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;1,671&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;(26,447)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;4,044&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents contextRef="c-111" decimals="-3" id="f-518" unitRef="usd">15319000</us-gaap:DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents contextRef="c-112" decimals="-3" id="f-519" unitRef="usd">22892000</us-gaap:DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet contextRef="c-111" decimals="-3" id="f-520" unitRef="usd">67947000</us-gaap:DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet contextRef="c-112" decimals="-3" id="f-521" unitRef="usd">54316000</us-gaap:DisposalGroupIncludingDiscontinuedOperationAccountsNotesAndLoansReceivableNet>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationInventoryCurrent contextRef="c-111" decimals="-3" id="f-522" unitRef="usd">53383000</us-gaap:DisposalGroupIncludingDiscontinuedOperationInventoryCurrent>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationInventoryCurrent contextRef="c-112" decimals="-3" id="f-523" unitRef="usd">46858000</us-gaap:DisposalGroupIncludingDiscontinuedOperationInventoryCurrent>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent contextRef="c-111" decimals="-3" id="f-524" unitRef="usd">5772000</us-gaap:DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent contextRef="c-112" decimals="-3" id="f-525" unitRef="usd">4332000</us-gaap:DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent>
    <us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent contextRef="c-111" decimals="-3" id="f-526" unitRef="usd">142421000</us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent>
    <us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent contextRef="c-112" decimals="-3" id="f-527" unitRef="usd">128398000</us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent>
    <wprt:DisposalGroupIncludingDiscontinuedOperationInvestmentsNoncurrent contextRef="c-111" decimals="-3" id="f-528" unitRef="usd">3331000</wprt:DisposalGroupIncludingDiscontinuedOperationInvestmentsNoncurrent>
    <wprt:DisposalGroupIncludingDiscontinuedOperationInvestmentsNoncurrent contextRef="c-112" decimals="-3" id="f-529" unitRef="usd">2866000</wprt:DisposalGroupIncludingDiscontinuedOperationInvestmentsNoncurrent>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent contextRef="c-111" decimals="-3" id="f-530" unitRef="usd">43775000</us-gaap:DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent contextRef="c-112" decimals="-3" id="f-531" unitRef="usd">38836000</us-gaap:DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent>
    <wprt:DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAssetNoncurrent contextRef="c-111" decimals="-3" id="f-532" unitRef="usd">21744000</wprt:DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAssetNoncurrent>
    <wprt:DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAssetNoncurrent contextRef="c-112" decimals="-3" id="f-533" unitRef="usd">18196000</wprt:DisposalGroupIncludingDiscontinuedOperationOperatingLeaseRightOfUseAssetNoncurrent>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent contextRef="c-111" decimals="-3" id="f-534" unitRef="usd">5179000</us-gaap:DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent contextRef="c-112" decimals="-3" id="f-535" unitRef="usd">5184000</us-gaap:DisposalGroupIncludingDiscontinuedOperationIntangibleAssetsNoncurrent>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationDeferredTaxAssets contextRef="c-111" decimals="-3" id="f-536" unitRef="usd">10196000</us-gaap:DisposalGroupIncludingDiscontinuedOperationDeferredTaxAssets>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationDeferredTaxAssets contextRef="c-112" decimals="-3" id="f-537" unitRef="usd">9695000</us-gaap:DisposalGroupIncludingDiscontinuedOperationDeferredTaxAssets>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationGoodwillNoncurrent contextRef="c-111" decimals="-3" id="f-538" unitRef="usd">3257000</us-gaap:DisposalGroupIncludingDiscontinuedOperationGoodwillNoncurrent>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationGoodwillNoncurrent contextRef="c-112" decimals="-3" id="f-539" unitRef="usd">2876000</us-gaap:DisposalGroupIncludingDiscontinuedOperationGoodwillNoncurrent>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets contextRef="c-111" decimals="-3" id="f-540" unitRef="usd">1999000</us-gaap:DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets contextRef="c-112" decimals="-3" id="f-541" unitRef="usd">1842000</us-gaap:DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent contextRef="c-111" decimals="-3" id="f-542" unitRef="usd">89481000</us-gaap:DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent contextRef="c-112" decimals="-3" id="f-543" unitRef="usd">79495000</us-gaap:DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent>
    <wprt:DisposalGroupIncludingDiscontinuedOperationValuationAllowance contextRef="c-111" decimals="-3" id="f-544" unitRef="usd">30183000</wprt:DisposalGroupIncludingDiscontinuedOperationValuationAllowance>
    <wprt:DisposalGroupIncludingDiscontinuedOperationValuationAllowance contextRef="c-112" decimals="-3" id="f-545" unitRef="usd">0</wprt:DisposalGroupIncludingDiscontinuedOperationValuationAllowance>
    <us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperation contextRef="c-111" decimals="-3" id="f-546" unitRef="usd">201719000</us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperation>
    <us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperation contextRef="c-112" decimals="-3" id="f-547" unitRef="usd">207893000</us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperation>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationAccountsPayableAndAccruedLiabilitiesCurrent contextRef="c-111" decimals="-3" id="f-548" unitRef="usd">78048000</us-gaap:DisposalGroupIncludingDiscontinuedOperationAccountsPayableAndAccruedLiabilitiesCurrent>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationAccountsPayableAndAccruedLiabilitiesCurrent contextRef="c-112" decimals="-3" id="f-549" unitRef="usd">68688000</us-gaap:DisposalGroupIncludingDiscontinuedOperationAccountsPayableAndAccruedLiabilitiesCurrent>
    <wprt:DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityCurrent contextRef="c-111" decimals="-3" id="f-550" unitRef="usd">2703000</wprt:DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityCurrent>
    <wprt:DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityCurrent contextRef="c-112" decimals="-3" id="f-551" unitRef="usd">2336000</wprt:DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityCurrent>
    <wprt:DisposalGroupIncludingDiscontinuedOperationLongTermDebtCurrent contextRef="c-111" decimals="-3" id="f-552" unitRef="usd">9763000</wprt:DisposalGroupIncludingDiscontinuedOperationLongTermDebtCurrent>
    <wprt:DisposalGroupIncludingDiscontinuedOperationLongTermDebtCurrent contextRef="c-112" decimals="-3" id="f-553" unitRef="usd">10755000</wprt:DisposalGroupIncludingDiscontinuedOperationLongTermDebtCurrent>
    <wprt:DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualCurrent contextRef="c-111" decimals="-3" id="f-554" unitRef="usd">3416000</wprt:DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualCurrent>
    <wprt:DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualCurrent contextRef="c-112" decimals="-3" id="f-555" unitRef="usd">2709000</wprt:DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualCurrent>
    <us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent contextRef="c-111" decimals="-3" id="f-556" unitRef="usd">93930000</us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent>
    <us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent contextRef="c-112" decimals="-3" id="f-557" unitRef="usd">84488000</us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent>
    <wprt:DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent contextRef="c-111" decimals="-3" id="f-558" unitRef="usd">19170000</wprt:DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent>
    <wprt:DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent contextRef="c-112" decimals="-3" id="f-559" unitRef="usd">15885000</wprt:DisposalGroupIncludingDiscontinuedOperationOperatingLeaseLiabilityNoncurrent>
    <wprt:DisposalGroupIncludingDiscontinuedOperationLongTermDebtNoncurrent contextRef="c-111" decimals="-3" id="f-560" unitRef="usd">14487000</wprt:DisposalGroupIncludingDiscontinuedOperationLongTermDebtNoncurrent>
    <wprt:DisposalGroupIncludingDiscontinuedOperationLongTermDebtNoncurrent contextRef="c-112" decimals="-3" id="f-561" unitRef="usd">16135000</wprt:DisposalGroupIncludingDiscontinuedOperationLongTermDebtNoncurrent>
    <wprt:DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualNoncurrent contextRef="c-111" decimals="-3" id="f-562" unitRef="usd">1888000</wprt:DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualNoncurrent>
    <wprt:DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualNoncurrent contextRef="c-112" decimals="-3" id="f-563" unitRef="usd">1456000</wprt:DisposalGroupIncludingDiscontinuedOperationProductWarrantyAccrualNoncurrent>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationDeferredTaxLiabilities contextRef="c-111" decimals="-3" id="f-564" unitRef="usd">3588000</us-gaap:DisposalGroupIncludingDiscontinuedOperationDeferredTaxLiabilities>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationDeferredTaxLiabilities contextRef="c-112" decimals="-3" id="f-565" unitRef="usd">4029000</us-gaap:DisposalGroupIncludingDiscontinuedOperationDeferredTaxLiabilities>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentLiabilities contextRef="c-111" decimals="-3" id="f-566" unitRef="usd">3114000</us-gaap:DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentLiabilities>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentLiabilities contextRef="c-112" decimals="-3" id="f-567" unitRef="usd">2955000</us-gaap:DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentLiabilities>
    <us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent contextRef="c-111" decimals="-3" id="f-568" unitRef="usd">42247000</us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent>
    <us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent contextRef="c-112" decimals="-3" id="f-569" unitRef="usd">40460000</us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent>
    <us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation contextRef="c-111" decimals="-3" id="f-570" unitRef="usd">136177000</us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation>
    <us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation contextRef="c-112" decimals="-3" id="f-571" unitRef="usd">124948000</us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationRevenue contextRef="c-104" decimals="-3" id="f-572" unitRef="usd">76372000</us-gaap:DisposalGroupIncludingDiscontinuedOperationRevenue>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationRevenue contextRef="c-106" decimals="-3" id="f-573" unitRef="usd">69277000</us-gaap:DisposalGroupIncludingDiscontinuedOperationRevenue>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationRevenue contextRef="c-105" decimals="-3" id="f-574" unitRef="usd">140004000</us-gaap:DisposalGroupIncludingDiscontinuedOperationRevenue>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationRevenue contextRef="c-107" decimals="-3" id="f-575" unitRef="usd">132423000</us-gaap:DisposalGroupIncludingDiscontinuedOperationRevenue>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold contextRef="c-104" decimals="-3" id="f-576" unitRef="usd">61219000</us-gaap:DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold contextRef="c-106" decimals="-3" id="f-577" unitRef="usd">54514000</us-gaap:DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold contextRef="c-105" decimals="-3" id="f-578" unitRef="usd">111160000</us-gaap:DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold contextRef="c-107" decimals="-3" id="f-579" unitRef="usd">105395000</us-gaap:DisposalGroupIncludingDiscontinuedOperationCostsOfGoodsSold>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss contextRef="c-104" decimals="-3" id="f-580" unitRef="usd">15153000</us-gaap:DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss contextRef="c-106" decimals="-3" id="f-581" unitRef="usd">14763000</us-gaap:DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss contextRef="c-105" decimals="-3" id="f-582" unitRef="usd">28844000</us-gaap:DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss contextRef="c-107" decimals="-3" id="f-583" unitRef="usd">27028000</us-gaap:DisposalGroupIncludingDiscontinuedOperationGrossProfitLoss>
    <wprt:DisposalGroupIncludingDiscontinuedOperationResearchAndDevelopmentExpense contextRef="c-104" decimals="-3" id="f-584" unitRef="usd">2979000</wprt:DisposalGroupIncludingDiscontinuedOperationResearchAndDevelopmentExpense>
    <wprt:DisposalGroupIncludingDiscontinuedOperationResearchAndDevelopmentExpense contextRef="c-106" decimals="-3" id="f-585" unitRef="usd">3100000</wprt:DisposalGroupIncludingDiscontinuedOperationResearchAndDevelopmentExpense>
    <wprt:DisposalGroupIncludingDiscontinuedOperationResearchAndDevelopmentExpense contextRef="c-105" decimals="-3" id="f-586" unitRef="usd">5738000</wprt:DisposalGroupIncludingDiscontinuedOperationResearchAndDevelopmentExpense>
    <wprt:DisposalGroupIncludingDiscontinuedOperationResearchAndDevelopmentExpense contextRef="c-107" decimals="-3" id="f-587" unitRef="usd">6444000</wprt:DisposalGroupIncludingDiscontinuedOperationResearchAndDevelopmentExpense>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationGeneralAndAdministrativeExpense contextRef="c-104" decimals="-3" id="f-588" unitRef="usd">3756000</us-gaap:DisposalGroupIncludingDiscontinuedOperationGeneralAndAdministrativeExpense>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationGeneralAndAdministrativeExpense contextRef="c-106" decimals="-3" id="f-589" unitRef="usd">5883000</us-gaap:DisposalGroupIncludingDiscontinuedOperationGeneralAndAdministrativeExpense>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationGeneralAndAdministrativeExpense contextRef="c-105" decimals="-3" id="f-590" unitRef="usd">7481000</us-gaap:DisposalGroupIncludingDiscontinuedOperationGeneralAndAdministrativeExpense>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationGeneralAndAdministrativeExpense contextRef="c-107" decimals="-3" id="f-591" unitRef="usd">9041000</us-gaap:DisposalGroupIncludingDiscontinuedOperationGeneralAndAdministrativeExpense>
    <wprt:DisposalGroupIncludingDiscontinuedOperationSellingAndMarketingExpense contextRef="c-104" decimals="-3" id="f-592" unitRef="usd">2854000</wprt:DisposalGroupIncludingDiscontinuedOperationSellingAndMarketingExpense>
    <wprt:DisposalGroupIncludingDiscontinuedOperationSellingAndMarketingExpense contextRef="c-106" decimals="-3" id="f-593" unitRef="usd">2478000</wprt:DisposalGroupIncludingDiscontinuedOperationSellingAndMarketingExpense>
    <wprt:DisposalGroupIncludingDiscontinuedOperationSellingAndMarketingExpense contextRef="c-105" decimals="-3" id="f-594" unitRef="usd">5169000</wprt:DisposalGroupIncludingDiscontinuedOperationSellingAndMarketingExpense>
    <wprt:DisposalGroupIncludingDiscontinuedOperationSellingAndMarketingExpense contextRef="c-107" decimals="-3" id="f-595" unitRef="usd">4644000</wprt:DisposalGroupIncludingDiscontinuedOperationSellingAndMarketingExpense>
    <wprt:DisposalGroupIncludingDiscontinuedOperationForeignExchangeGainLoss contextRef="c-104" decimals="-3" id="f-596" unitRef="usd">-1862000</wprt:DisposalGroupIncludingDiscontinuedOperationForeignExchangeGainLoss>
    <wprt:DisposalGroupIncludingDiscontinuedOperationForeignExchangeGainLoss contextRef="c-106" decimals="-3" id="f-597" unitRef="usd">-198000</wprt:DisposalGroupIncludingDiscontinuedOperationForeignExchangeGainLoss>
    <wprt:DisposalGroupIncludingDiscontinuedOperationForeignExchangeGainLoss contextRef="c-105" decimals="-3" id="f-598" unitRef="usd">-2609000</wprt:DisposalGroupIncludingDiscontinuedOperationForeignExchangeGainLoss>
    <wprt:DisposalGroupIncludingDiscontinuedOperationForeignExchangeGainLoss contextRef="c-107" decimals="-3" id="f-599" unitRef="usd">-82000</wprt:DisposalGroupIncludingDiscontinuedOperationForeignExchangeGainLoss>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization contextRef="c-104" decimals="-3" id="f-600" unitRef="usd">646000</us-gaap:DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization contextRef="c-106" decimals="-3" id="f-601" unitRef="usd">622000</us-gaap:DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization contextRef="c-105" decimals="-3" id="f-602" unitRef="usd">1279000</us-gaap:DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization contextRef="c-107" decimals="-3" id="f-603" unitRef="usd">1307000</us-gaap:DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationOperatingExpense contextRef="c-104" decimals="-3" id="f-604" unitRef="usd">12097000</us-gaap:DisposalGroupIncludingDiscontinuedOperationOperatingExpense>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationOperatingExpense contextRef="c-106" decimals="-3" id="f-605" unitRef="usd">12281000</us-gaap:DisposalGroupIncludingDiscontinuedOperationOperatingExpense>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationOperatingExpense contextRef="c-105" decimals="-3" id="f-606" unitRef="usd">22276000</us-gaap:DisposalGroupIncludingDiscontinuedOperationOperatingExpense>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationOperatingExpense contextRef="c-107" decimals="-3" id="f-607" unitRef="usd">21518000</us-gaap:DisposalGroupIncludingDiscontinuedOperationOperatingExpense>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss contextRef="c-104" decimals="-3" id="f-608" unitRef="usd">3056000</us-gaap:DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss contextRef="c-106" decimals="-3" id="f-609" unitRef="usd">2482000</us-gaap:DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss contextRef="c-105" decimals="-3" id="f-610" unitRef="usd">6568000</us-gaap:DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss contextRef="c-107" decimals="-3" id="f-611" unitRef="usd">5510000</us-gaap:DisposalGroupIncludingDiscontinuedOperationOperatingIncomeLoss>
    <wprt:DisposalGroupIncludingDiscontinuedOperationIncomeLossFromEquityMethodInvestments contextRef="c-104" decimals="-3" id="f-612" unitRef="usd">387000</wprt:DisposalGroupIncludingDiscontinuedOperationIncomeLossFromEquityMethodInvestments>
    <wprt:DisposalGroupIncludingDiscontinuedOperationIncomeLossFromEquityMethodInvestments contextRef="c-106" decimals="-3" id="f-613" unitRef="usd">414000</wprt:DisposalGroupIncludingDiscontinuedOperationIncomeLossFromEquityMethodInvestments>
    <wprt:DisposalGroupIncludingDiscontinuedOperationIncomeLossFromEquityMethodInvestments contextRef="c-105" decimals="-3" id="f-614" unitRef="usd">472000</wprt:DisposalGroupIncludingDiscontinuedOperationIncomeLossFromEquityMethodInvestments>
    <wprt:DisposalGroupIncludingDiscontinuedOperationIncomeLossFromEquityMethodInvestments contextRef="c-107" decimals="-3" id="f-615" unitRef="usd">445000</wprt:DisposalGroupIncludingDiscontinuedOperationIncomeLossFromEquityMethodInvestments>
    <us-gaap:DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax contextRef="c-104" decimals="-3" id="f-616" unitRef="usd">30183000</us-gaap:DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax>
    <us-gaap:DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax contextRef="c-106" decimals="-3" id="f-617" unitRef="usd">0</us-gaap:DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax>
    <us-gaap:DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax contextRef="c-105" decimals="-3" id="f-618" unitRef="usd">30183000</us-gaap:DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax>
    <us-gaap:DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax contextRef="c-107" decimals="-3" id="f-619" unitRef="usd">0</us-gaap:DiscontinuedOperationProvisionForLossGainOnDisposalBeforeIncomeTax>
    <wprt:DisposalGroupIncludingDiscontinuedOperationImpairmentOfLongLivedAssets contextRef="c-104" decimals="-3" id="f-620" unitRef="usd">664000</wprt:DisposalGroupIncludingDiscontinuedOperationImpairmentOfLongLivedAssets>
    <wprt:DisposalGroupIncludingDiscontinuedOperationImpairmentOfLongLivedAssets contextRef="c-106" decimals="-3" id="f-621" unitRef="usd">0</wprt:DisposalGroupIncludingDiscontinuedOperationImpairmentOfLongLivedAssets>
    <wprt:DisposalGroupIncludingDiscontinuedOperationImpairmentOfLongLivedAssets contextRef="c-105" decimals="-3" id="f-622" unitRef="usd">664000</wprt:DisposalGroupIncludingDiscontinuedOperationImpairmentOfLongLivedAssets>
    <wprt:DisposalGroupIncludingDiscontinuedOperationImpairmentOfLongLivedAssets contextRef="c-107" decimals="-3" id="f-623" unitRef="usd">0</wprt:DisposalGroupIncludingDiscontinuedOperationImpairmentOfLongLivedAssets>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationInterestExpense contextRef="c-104" decimals="-3" id="f-624" unitRef="usd">391000</us-gaap:DisposalGroupIncludingDiscontinuedOperationInterestExpense>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationInterestExpense contextRef="c-106" decimals="-3" id="f-625" unitRef="usd">438000</us-gaap:DisposalGroupIncludingDiscontinuedOperationInterestExpense>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationInterestExpense contextRef="c-105" decimals="-3" id="f-626" unitRef="usd">875000</us-gaap:DisposalGroupIncludingDiscontinuedOperationInterestExpense>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationInterestExpense contextRef="c-107" decimals="-3" id="f-627" unitRef="usd">935000</us-gaap:DisposalGroupIncludingDiscontinuedOperationInterestExpense>
    <wprt:DisposalGroupIncludingDiscontinuedOperationInterestAndOtherIncomeExpense contextRef="c-104" decimals="-3" id="f-628" unitRef="usd">133000</wprt:DisposalGroupIncludingDiscontinuedOperationInterestAndOtherIncomeExpense>
    <wprt:DisposalGroupIncludingDiscontinuedOperationInterestAndOtherIncomeExpense contextRef="c-106" decimals="-3" id="f-629" unitRef="usd">88000</wprt:DisposalGroupIncludingDiscontinuedOperationInterestAndOtherIncomeExpense>
    <wprt:DisposalGroupIncludingDiscontinuedOperationInterestAndOtherIncomeExpense contextRef="c-105" decimals="-3" id="f-630" unitRef="usd">353000</wprt:DisposalGroupIncludingDiscontinuedOperationInterestAndOtherIncomeExpense>
    <wprt:DisposalGroupIncludingDiscontinuedOperationInterestAndOtherIncomeExpense contextRef="c-107" decimals="-3" id="f-631" unitRef="usd">503000</wprt:DisposalGroupIncludingDiscontinuedOperationInterestAndOtherIncomeExpense>
    <us-gaap:DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax contextRef="c-104" decimals="-3" id="f-632" unitRef="usd">-27662000</us-gaap:DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax>
    <us-gaap:DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax contextRef="c-106" decimals="-3" id="f-633" unitRef="usd">2546000</us-gaap:DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax>
    <us-gaap:DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax contextRef="c-105" decimals="-3" id="f-634" unitRef="usd">-24329000</us-gaap:DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax>
    <us-gaap:DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax contextRef="c-107" decimals="-3" id="f-635" unitRef="usd">5523000</us-gaap:DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax>
    <us-gaap:DiscontinuedOperationTaxEffectOfDiscontinuedOperation contextRef="c-104" decimals="-3" id="f-636" unitRef="usd">1629000</us-gaap:DiscontinuedOperationTaxEffectOfDiscontinuedOperation>
    <us-gaap:DiscontinuedOperationTaxEffectOfDiscontinuedOperation contextRef="c-106" decimals="-3" id="f-637" unitRef="usd">875000</us-gaap:DiscontinuedOperationTaxEffectOfDiscontinuedOperation>
    <us-gaap:DiscontinuedOperationTaxEffectOfDiscontinuedOperation contextRef="c-105" decimals="-3" id="f-638" unitRef="usd">2118000</us-gaap:DiscontinuedOperationTaxEffectOfDiscontinuedOperation>
    <us-gaap:DiscontinuedOperationTaxEffectOfDiscontinuedOperation contextRef="c-107" decimals="-3" id="f-639" unitRef="usd">1479000</us-gaap:DiscontinuedOperationTaxEffectOfDiscontinuedOperation>
    <us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity contextRef="c-104" decimals="-3" id="f-640" unitRef="usd">-29291000</us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity>
    <us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity contextRef="c-106" decimals="-3" id="f-641" unitRef="usd">1671000</us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity>
    <us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity contextRef="c-105" decimals="-3" id="f-642" unitRef="usd">-26447000</us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity>
    <us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity contextRef="c-107" decimals="-3" id="f-643" unitRef="usd">4044000</us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity>
    <us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock contextRef="c-1" id="f-644">&lt;div&gt;&lt;span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;6.          Accounts receivable:&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:120%"&gt;  &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&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&gt;&lt;td style="width:60.303%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:17.613%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:17.616%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;June 30, 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;December 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Customer trade receivables&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,916&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,513&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Holdback receivable&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;10,737&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Other receivables&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;1,728&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;887&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Due from related parties (note 14)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;12,505&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;4,973&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Allowance for expected credit losses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;(569)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;(372)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;16,580&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;18,738&#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&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In 2022, a holdback receivable was recorded as part of the sale of the Company's interest in Cummins Westport Inc. to Cummins Inc. ("Cummins"). The holdback was retained by Cummins for a term of three years to satisfy any extended warranty obligations in excess of the recorded extended warranty obligation. Unused amounts were repaid to the Company at the end of the three-year term. In March 2025, the Company collected $11,365 from Cummins related to the holdback receivable, including interest accrued.&lt;/span&gt;&lt;/div&gt;</us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock>
    <us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock contextRef="c-1" id="f-645">&lt;div style="margin-top:5pt"&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&gt;&lt;td style="width:60.303%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:17.613%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:17.616%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;June 30, 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;December 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Customer trade receivables&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,916&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,513&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Holdback receivable&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;10,737&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Other receivables&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;1,728&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;887&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Due from related parties (note 14)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;12,505&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;4,973&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Allowance for expected credit losses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;(569)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;(372)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;16,580&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;18,738&#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&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock>
    <wprt:TradeAccountsReceivable contextRef="c-2" decimals="-3" id="f-646" unitRef="usd">2916000</wprt:TradeAccountsReceivable>
    <wprt:TradeAccountsReceivable contextRef="c-3" decimals="-3" id="f-647" unitRef="usd">2513000</wprt:TradeAccountsReceivable>
    <wprt:HoldbackReceivablesNetCurrent contextRef="c-2" decimals="-3" id="f-648" unitRef="usd">0</wprt:HoldbackReceivablesNetCurrent>
    <wprt:HoldbackReceivablesNetCurrent contextRef="c-3" decimals="-3" id="f-649" unitRef="usd">10737000</wprt:HoldbackReceivablesNetCurrent>
    <us-gaap:OtherReceivables contextRef="c-2" decimals="-3" id="f-650" unitRef="usd">1728000</us-gaap:OtherReceivables>
    <us-gaap:OtherReceivables contextRef="c-3" decimals="-3" id="f-651" unitRef="usd">887000</us-gaap:OtherReceivables>
    <us-gaap:OtherReceivablesNetCurrent contextRef="c-113" decimals="-3" id="f-652" unitRef="usd">12505000</us-gaap:OtherReceivablesNetCurrent>
    <us-gaap:OtherReceivablesNetCurrent contextRef="c-114" decimals="-3" id="f-653" unitRef="usd">4973000</us-gaap:OtherReceivablesNetCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent contextRef="c-2" decimals="-3" id="f-654" unitRef="usd">569000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent contextRef="c-3" decimals="-3" id="f-655" unitRef="usd">372000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AccountsReceivableNetCurrent contextRef="c-2" decimals="-3" id="f-656" unitRef="usd">16580000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent contextRef="c-3" decimals="-3" id="f-657" unitRef="usd">18738000</us-gaap:AccountsReceivableNetCurrent>
    <wprt:HoldbackTerm contextRef="c-115" id="f-658">P3Y</wprt:HoldbackTerm>
    <wprt:HoldbackTerm contextRef="c-115" id="f-659">P3Y</wprt:HoldbackTerm>
    <wprt:HoldbackReceivablesNetCurrent contextRef="c-116" decimals="-3" id="f-660" unitRef="usd">11365000</wprt:HoldbackReceivablesNetCurrent>
    <us-gaap:InventoryDisclosureTextBlock contextRef="c-1" id="f-661">&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;7.          Inventories:&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&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&gt;&lt;td style="width:60.303%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:17.613%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:17.616%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;June 30, 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;December 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Purchased parts&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,341&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;5,463&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Finished goods&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;515&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;1,205&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,856&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;6,668&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;During the three and six months ended June 30, 2025, the Company recorded change in write-downs to net realizable value of approximately $140 and $110, respectively (three and six months ended June 30, 2024 - $307 and $503, respectively).&lt;/span&gt;&lt;/div&gt;</us-gaap:InventoryDisclosureTextBlock>
    <us-gaap:ScheduleOfInventoryCurrentTableTextBlock contextRef="c-1" id="f-662">&lt;div style="margin-top:5pt"&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&gt;&lt;td style="width:60.303%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:17.613%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:17.616%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;June 30, 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;December 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Purchased parts&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,341&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;5,463&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Finished goods&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;515&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;1,205&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,856&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;6,668&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfInventoryCurrentTableTextBlock>
    <us-gaap:OtherInventoryPurchasedGoods contextRef="c-2" decimals="-3" id="f-663" unitRef="usd">2341000</us-gaap:OtherInventoryPurchasedGoods>
    <us-gaap:OtherInventoryPurchasedGoods contextRef="c-3" decimals="-3" id="f-664" unitRef="usd">5463000</us-gaap:OtherInventoryPurchasedGoods>
    <us-gaap:InventoryFinishedGoods contextRef="c-2" decimals="-3" id="f-665" unitRef="usd">515000</us-gaap:InventoryFinishedGoods>
    <us-gaap:InventoryFinishedGoods contextRef="c-3" decimals="-3" id="f-666" unitRef="usd">1205000</us-gaap:InventoryFinishedGoods>
    <us-gaap:InventoryNet contextRef="c-2" decimals="-3" id="f-667" unitRef="usd">2856000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet contextRef="c-3" decimals="-3" id="f-668" unitRef="usd">6668000</us-gaap:InventoryNet>
    <us-gaap:InventoryWriteDown contextRef="c-4" decimals="-3" id="f-669" unitRef="usd">140000</us-gaap:InventoryWriteDown>
    <us-gaap:InventoryWriteDown contextRef="c-1" decimals="-3" id="f-670" unitRef="usd">110000</us-gaap:InventoryWriteDown>
    <us-gaap:InventoryWriteDown contextRef="c-5" decimals="-3" id="f-671" unitRef="usd">307000</us-gaap:InventoryWriteDown>
    <us-gaap:InventoryWriteDown contextRef="c-6" decimals="-3" id="f-672" unitRef="usd">503000</us-gaap:InventoryWriteDown>
    <us-gaap:EquityMethodInvestmentsDisclosureTextBlock contextRef="c-1" id="f-673">&lt;div&gt;&lt;span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;8.          Long-term investments:&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&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&gt;&lt;td style="width:60.303%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:17.613%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:17.616%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;June 30, 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;December 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Cespira Canada LP&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;24,263&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;25,494&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Cespira Sweden AB&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;12,859&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;11,225&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Other equity-accounted investees&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;147&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;37,122&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;36,866&#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&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;During the three and six months ended June&#160;30, 2025, the Company recognized its share of Cespira's losses of $3,686 and $7,570&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; &lt;/span&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;as a loss from investment accounted for by the equity method, respectively (three and six months ended June 30, 2024 - $1,102 and $1,102, respectively).&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;During the three and six months ended June 30, 2025, the Company contributed additional capital of $4,185 and $8,871 into Cespira, respectively (three and six months ended June 30, 2024 - $9,900 and $9,900, respectively).&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;8.          Long-term investments (continued):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Combined assets, liabilities, revenue and expenses of Cespira, are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&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&gt;&lt;td style="width:61.180%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:17.174%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:17.178%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;June 30,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;December 31, &lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2024&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current assets:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash and cash equivalents&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,010&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,305&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accounts receivable&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25,068&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21,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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Inventories&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,512&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,414&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Prepaid expenses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,376&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,471&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;53,966&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;40,190&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Property, plant and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;41,409&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;40,901&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Intangible assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,215&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,087&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Goodwill&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;595&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;563&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deferred tax assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;102&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',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:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',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-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;103,287&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',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-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;88,741&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current liabilities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;border-top:3pt double #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;border-top:3pt double #000;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accounts payable&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22,680&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,527&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current portion of provisions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,826&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,128&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other current liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,800&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,910&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;Deferred income tax liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;197&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',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:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;29,503&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,565&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Long-term portion of provisions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;456&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;532&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other long-term liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;290&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;569&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;30,249&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21,666&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;73,038&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;67,075&#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&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&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&gt;&lt;td style="width:38.081%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.519%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.519%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.519%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.526%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Three Months Ended June 30,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Six Months Ended June 30,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,020&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,059&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;28,819&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,059&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cost of revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,946&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,901&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;30,230&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,901&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Gross profit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,926)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;158&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,411)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;158&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="21" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating expenses:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Research and development&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,888&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,121&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,890&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,121&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;General and administrative&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,692&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;715&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,419&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;715&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Sales and marketing&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;322&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;69&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;618&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;69&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign exchange gain&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(845)&lt;/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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(88)&lt;/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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Depreciation and amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;860&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;265&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,590&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;265&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,917&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,170&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,429&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,170&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Loss from operations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(6,843)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,012)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(13,840)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,012)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Interest income, net of bank charges&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;32&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Loss before income taxes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(6,818)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,012)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(13,808)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,012)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Income tax (recovery) expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(72)&lt;/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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',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;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net loss&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(6,746)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,016)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(13,744)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,016)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:EquityMethodInvestmentsDisclosureTextBlock>
    <us-gaap:EquityMethodInvestmentsTextBlock contextRef="c-1" id="f-674">&lt;div style="margin-top:5pt"&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&gt;&lt;td style="width:60.303%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:17.613%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:17.616%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;June 30, 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;December 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Cespira Canada LP&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;24,263&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;25,494&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Cespira Sweden AB&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;12,859&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;11,225&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Other equity-accounted investees&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;147&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;37,122&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;36,866&#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&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Combined assets, liabilities, revenue and expenses of Cespira, are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&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&gt;&lt;td style="width:61.180%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:17.174%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:17.178%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;June 30,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;December 31, &lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2024&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current assets:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash and cash equivalents&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,010&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,305&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accounts receivable&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25,068&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21,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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Inventories&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,512&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,414&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Prepaid expenses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,376&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,471&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;53,966&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;40,190&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Property, plant and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;41,409&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;40,901&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Intangible assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,215&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,087&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Goodwill&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;595&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;563&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deferred tax assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;102&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',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:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',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-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;103,287&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',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-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;88,741&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current liabilities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;border-top:3pt double #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;border-top:3pt double #000;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accounts payable&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22,680&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,527&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current portion of provisions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,826&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,128&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other current liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,800&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,910&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;Deferred income tax liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;197&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',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:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;29,503&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,565&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Long-term portion of provisions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;456&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;532&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other long-term liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;290&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;569&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;30,249&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21,666&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;73,038&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;67,075&#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&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&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&gt;&lt;td style="width:38.081%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.519%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.519%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.519%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.526%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Three Months Ended June 30,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Six Months Ended June 30,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,020&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,059&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;28,819&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,059&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cost of revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,946&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,901&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;30,230&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,901&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Gross profit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,926)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;158&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,411)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;158&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="21" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating expenses:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Research and development&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,888&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,121&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,890&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,121&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;General and administrative&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,692&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;715&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,419&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;715&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Sales and marketing&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;322&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;69&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;618&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;69&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign exchange gain&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(845)&lt;/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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(88)&lt;/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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Depreciation and amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;860&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;265&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,590&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;265&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,917&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,170&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,429&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,170&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Loss from operations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(6,843)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,012)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(13,840)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,012)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Interest income, net of bank charges&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;32&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Loss before income taxes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(6,818)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,012)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(13,808)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,012)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Income tax (recovery) expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(72)&lt;/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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',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;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net loss&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(6,746)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,016)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(13,744)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,016)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:EquityMethodInvestmentsTextBlock>
    <us-gaap:LongTermInvestments contextRef="c-117" decimals="-3" id="f-675" unitRef="usd">24263000</us-gaap:LongTermInvestments>
    <us-gaap:LongTermInvestments contextRef="c-118" decimals="-3" id="f-676" unitRef="usd">25494000</us-gaap:LongTermInvestments>
    <us-gaap:LongTermInvestments contextRef="c-119" decimals="-3" id="f-677" unitRef="usd">12859000</us-gaap:LongTermInvestments>
    <us-gaap:LongTermInvestments contextRef="c-120" decimals="-3" id="f-678" unitRef="usd">11225000</us-gaap:LongTermInvestments>
    <us-gaap:LongTermInvestments contextRef="c-121" decimals="-3" id="f-679" unitRef="usd">0</us-gaap:LongTermInvestments>
    <us-gaap:LongTermInvestments contextRef="c-122" decimals="-3" id="f-680" unitRef="usd">147000</us-gaap:LongTermInvestments>
    <us-gaap:LongTermInvestments contextRef="c-2" decimals="-3" id="f-681" unitRef="usd">37122000</us-gaap:LongTermInvestments>
    <us-gaap:LongTermInvestments contextRef="c-3" decimals="-3" id="f-682" unitRef="usd">36866000</us-gaap:LongTermInvestments>
    <us-gaap:IncomeLossFromEquityMethodInvestments contextRef="c-4" decimals="-3" id="f-683" unitRef="usd">-3686000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromEquityMethodInvestments contextRef="c-1" decimals="-3" id="f-684" unitRef="usd">-7570000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromEquityMethodInvestments contextRef="c-5" decimals="-3" id="f-685" unitRef="usd">-1102000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromEquityMethodInvestments contextRef="c-6" decimals="-3" id="f-686" unitRef="usd">-1102000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:PaymentsToAcquireEquityMethodInvestments contextRef="c-4" decimals="-3" id="f-687" unitRef="usd">4185000</us-gaap:PaymentsToAcquireEquityMethodInvestments>
    <us-gaap:PaymentsToAcquireEquityMethodInvestments contextRef="c-1" decimals="-3" id="f-688" unitRef="usd">8871000</us-gaap:PaymentsToAcquireEquityMethodInvestments>
    <us-gaap:PaymentsToAcquireEquityMethodInvestments contextRef="c-5" decimals="-3" id="f-689" unitRef="usd">9900000</us-gaap:PaymentsToAcquireEquityMethodInvestments>
    <us-gaap:PaymentsToAcquireEquityMethodInvestments contextRef="c-6" decimals="-3" id="f-690" unitRef="usd">9900000</us-gaap:PaymentsToAcquireEquityMethodInvestments>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents contextRef="c-123" decimals="-3" id="f-691" unitRef="usd">9010000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents contextRef="c-124" decimals="-3" id="f-692" unitRef="usd">10305000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:AccountsReceivableNetCurrent contextRef="c-123" decimals="-3" id="f-693" unitRef="usd">25068000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent contextRef="c-124" decimals="-3" id="f-694" unitRef="usd">21000000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:InventoryNet contextRef="c-123" decimals="-3" id="f-695" unitRef="usd">16512000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet contextRef="c-124" decimals="-3" id="f-696" unitRef="usd">7414000</us-gaap:InventoryNet>
    <us-gaap:PrepaidExpenseCurrentAndNoncurrent contextRef="c-123" decimals="-3" id="f-697" unitRef="usd">3376000</us-gaap:PrepaidExpenseCurrentAndNoncurrent>
    <us-gaap:PrepaidExpenseCurrentAndNoncurrent contextRef="c-124" decimals="-3" id="f-698" unitRef="usd">1471000</us-gaap:PrepaidExpenseCurrentAndNoncurrent>
    <us-gaap:AssetsCurrent contextRef="c-123" decimals="-3" id="f-699" unitRef="usd">53966000</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent contextRef="c-124" decimals="-3" id="f-700" unitRef="usd">40190000</us-gaap:AssetsCurrent>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="c-123" decimals="-3" id="f-701" unitRef="usd">41409000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="c-124" decimals="-3" id="f-702" unitRef="usd">40901000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill contextRef="c-123" decimals="-3" id="f-703" unitRef="usd">7215000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill contextRef="c-124" decimals="-3" id="f-704" unitRef="usd">7087000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:Goodwill contextRef="c-123" decimals="-3" id="f-705" unitRef="usd">595000</us-gaap:Goodwill>
    <us-gaap:Goodwill contextRef="c-124" decimals="-3" id="f-706" unitRef="usd">563000</us-gaap:Goodwill>
    <us-gaap:DeferredTaxAssetsGross contextRef="c-123" decimals="-3" id="f-707" unitRef="usd">102000</us-gaap:DeferredTaxAssetsGross>
    <us-gaap:DeferredTaxAssetsGross contextRef="c-124" decimals="-3" id="f-708" unitRef="usd">0</us-gaap:DeferredTaxAssetsGross>
    <us-gaap:Assets contextRef="c-123" decimals="-3" id="f-709" unitRef="usd">103287000</us-gaap:Assets>
    <us-gaap:Assets contextRef="c-124" decimals="-3" id="f-710" unitRef="usd">88741000</us-gaap:Assets>
    <us-gaap:AccountsPayableAndAccruedLiabilitiesCurrent contextRef="c-123" decimals="-3" id="f-711" unitRef="usd">22680000</us-gaap:AccountsPayableAndAccruedLiabilitiesCurrent>
    <us-gaap:AccountsPayableAndAccruedLiabilitiesCurrent contextRef="c-124" decimals="-3" id="f-712" unitRef="usd">16527000</us-gaap:AccountsPayableAndAccruedLiabilitiesCurrent>
    <us-gaap:ShortTermBorrowings contextRef="c-123" decimals="-3" id="f-713" unitRef="usd">1826000</us-gaap:ShortTermBorrowings>
    <us-gaap:ShortTermBorrowings contextRef="c-124" decimals="-3" id="f-714" unitRef="usd">2128000</us-gaap:ShortTermBorrowings>
    <us-gaap:OtherLiabilitiesCurrent contextRef="c-123" decimals="-3" id="f-715" unitRef="usd">4800000</us-gaap:OtherLiabilitiesCurrent>
    <us-gaap:OtherLiabilitiesCurrent contextRef="c-124" decimals="-3" id="f-716" unitRef="usd">1910000</us-gaap:OtherLiabilitiesCurrent>
    <us-gaap:DeferredIncomeTaxLiabilities contextRef="c-123" decimals="-3" id="f-717" unitRef="usd">197000</us-gaap:DeferredIncomeTaxLiabilities>
    <us-gaap:DeferredIncomeTaxLiabilities contextRef="c-124" decimals="-3" id="f-718" unitRef="usd">0</us-gaap:DeferredIncomeTaxLiabilities>
    <us-gaap:LiabilitiesCurrent contextRef="c-123" decimals="-3" id="f-719" unitRef="usd">29503000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent contextRef="c-124" decimals="-3" id="f-720" unitRef="usd">20565000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LongTermDebtAndCapitalLeaseObligations contextRef="c-123" decimals="-3" id="f-721" unitRef="usd">456000</us-gaap:LongTermDebtAndCapitalLeaseObligations>
    <us-gaap:LongTermDebtAndCapitalLeaseObligations contextRef="c-124" decimals="-3" id="f-722" unitRef="usd">532000</us-gaap:LongTermDebtAndCapitalLeaseObligations>
    <us-gaap:OtherLiabilitiesNoncurrent contextRef="c-123" decimals="-3" id="f-723" unitRef="usd">290000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:OtherLiabilitiesNoncurrent contextRef="c-124" decimals="-3" id="f-724" unitRef="usd">569000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:Liabilities contextRef="c-123" decimals="-3" id="f-725" unitRef="usd">30249000</us-gaap:Liabilities>
    <us-gaap:Liabilities contextRef="c-124" decimals="-3" id="f-726" unitRef="usd">21666000</us-gaap:Liabilities>
    <us-gaap:AssetsNet contextRef="c-123" decimals="-3" id="f-727" unitRef="usd">73038000</us-gaap:AssetsNet>
    <us-gaap:AssetsNet contextRef="c-124" decimals="-3" id="f-728" unitRef="usd">67075000</us-gaap:AssetsNet>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-125" decimals="-3" id="f-729" unitRef="usd">12020000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-126" decimals="-3" id="f-730" unitRef="usd">4059000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-127" decimals="-3" id="f-731" unitRef="usd">28819000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-128" decimals="-3" id="f-732" unitRef="usd">4059000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:CostOfRevenue contextRef="c-125" decimals="-3" id="f-733" unitRef="usd">13946000</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue contextRef="c-126" decimals="-3" id="f-734" unitRef="usd">3901000</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue contextRef="c-127" decimals="-3" id="f-735" unitRef="usd">30230000</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue contextRef="c-128" decimals="-3" id="f-736" unitRef="usd">3901000</us-gaap:CostOfRevenue>
    <us-gaap:GrossProfit contextRef="c-125" decimals="-3" id="f-737" unitRef="usd">-1926000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="c-126" decimals="-3" id="f-738" unitRef="usd">158000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="c-127" decimals="-3" id="f-739" unitRef="usd">-1411000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="c-128" decimals="-3" id="f-740" unitRef="usd">158000</us-gaap:GrossProfit>
    <us-gaap:ResearchAndDevelopmentExpense contextRef="c-125" decimals="-3" id="f-741" unitRef="usd">1888000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense contextRef="c-126" decimals="-3" id="f-742" unitRef="usd">1121000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense contextRef="c-127" decimals="-3" id="f-743" unitRef="usd">4890000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense contextRef="c-128" decimals="-3" id="f-744" unitRef="usd">1121000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-125" decimals="-3" id="f-745" unitRef="usd">2692000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-126" decimals="-3" id="f-746" unitRef="usd">715000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-127" decimals="-3" id="f-747" unitRef="usd">5419000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-128" decimals="-3" id="f-748" unitRef="usd">715000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:SellingAndMarketingExpense contextRef="c-125" decimals="-3" id="f-749" unitRef="usd">322000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense contextRef="c-126" decimals="-3" id="f-750" unitRef="usd">69000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense contextRef="c-127" decimals="-3" id="f-751" unitRef="usd">618000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense contextRef="c-128" decimals="-3" id="f-752" unitRef="usd">69000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:ForeignCurrencyTransactionGainLossBeforeTax contextRef="c-125" decimals="-3" id="f-753" unitRef="usd">845000</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
    <us-gaap:ForeignCurrencyTransactionGainLossBeforeTax contextRef="c-126" decimals="-3" id="f-754" unitRef="usd">0</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
    <us-gaap:ForeignCurrencyTransactionGainLossBeforeTax contextRef="c-127" decimals="-3" id="f-755" unitRef="usd">88000</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
    <us-gaap:ForeignCurrencyTransactionGainLossBeforeTax contextRef="c-128" decimals="-3" id="f-756" unitRef="usd">0</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
    <us-gaap:DepreciationAmortizationAndAccretionNet contextRef="c-125" decimals="-3" id="f-757" unitRef="usd">860000</us-gaap:DepreciationAmortizationAndAccretionNet>
    <us-gaap:DepreciationAmortizationAndAccretionNet contextRef="c-126" decimals="-3" id="f-758" unitRef="usd">265000</us-gaap:DepreciationAmortizationAndAccretionNet>
    <us-gaap:DepreciationAmortizationAndAccretionNet contextRef="c-127" decimals="-3" id="f-759" unitRef="usd">1590000</us-gaap:DepreciationAmortizationAndAccretionNet>
    <us-gaap:DepreciationAmortizationAndAccretionNet contextRef="c-128" decimals="-3" id="f-760" unitRef="usd">265000</us-gaap:DepreciationAmortizationAndAccretionNet>
    <us-gaap:CostsAndExpenses contextRef="c-125" decimals="-3" id="f-761" unitRef="usd">4917000</us-gaap:CostsAndExpenses>
    <us-gaap:CostsAndExpenses contextRef="c-126" decimals="-3" id="f-762" unitRef="usd">2170000</us-gaap:CostsAndExpenses>
    <us-gaap:CostsAndExpenses contextRef="c-127" decimals="-3" id="f-763" unitRef="usd">12429000</us-gaap:CostsAndExpenses>
    <us-gaap:CostsAndExpenses contextRef="c-128" decimals="-3" id="f-764" unitRef="usd">2170000</us-gaap:CostsAndExpenses>
    <us-gaap:OperatingIncomeLoss contextRef="c-125" decimals="-3" id="f-765" unitRef="usd">-6843000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss contextRef="c-126" decimals="-3" id="f-766" unitRef="usd">-2012000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss contextRef="c-127" decimals="-3" id="f-767" unitRef="usd">-13840000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss contextRef="c-128" decimals="-3" id="f-768" unitRef="usd">-2012000</us-gaap:OperatingIncomeLoss>
    <us-gaap:InterestIncomeExpenseNonoperatingNet contextRef="c-125" decimals="-3" id="f-769" unitRef="usd">25000</us-gaap:InterestIncomeExpenseNonoperatingNet>
    <us-gaap:InterestIncomeExpenseNonoperatingNet contextRef="c-126" decimals="-3" id="f-770" unitRef="usd">0</us-gaap:InterestIncomeExpenseNonoperatingNet>
    <us-gaap:InterestIncomeExpenseNonoperatingNet contextRef="c-127" decimals="-3" id="f-771" unitRef="usd">32000</us-gaap:InterestIncomeExpenseNonoperatingNet>
    <us-gaap:InterestIncomeExpenseNonoperatingNet contextRef="c-128" decimals="-3" id="f-772" unitRef="usd">0</us-gaap:InterestIncomeExpenseNonoperatingNet>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest contextRef="c-125" decimals="-3" id="f-773" unitRef="usd">-6818000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest contextRef="c-126" decimals="-3" id="f-774" unitRef="usd">-2012000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest contextRef="c-127" decimals="-3" id="f-775" unitRef="usd">-13808000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest contextRef="c-128" decimals="-3" id="f-776" unitRef="usd">-2012000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeTaxExpenseBenefit contextRef="c-125" decimals="-3" id="f-777" unitRef="usd">-72000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit contextRef="c-126" decimals="-3" id="f-778" unitRef="usd">4000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit contextRef="c-127" decimals="-3" id="f-779" unitRef="usd">-64000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit contextRef="c-128" decimals="-3" id="f-780" unitRef="usd">4000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss contextRef="c-125" decimals="-3" id="f-781" unitRef="usd">-6746000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="c-126" decimals="-3" id="f-782" unitRef="usd">-2016000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="c-127" decimals="-3" id="f-783" unitRef="usd">-13744000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="c-128" decimals="-3" id="f-784" unitRef="usd">-2016000</us-gaap:NetIncomeLoss>
    <us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock contextRef="c-1" id="f-785">&lt;div&gt;&lt;span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;9.          Property, plant and equipment:&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%"&gt;  &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;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&gt;&lt;td style="width:55.478%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.788%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.788%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.794%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Accumulated&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Net&#160;Book&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;June 30, 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Depreciation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Value&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Computer equipment and software&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,976&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,799&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;177&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Furniture and fixtures&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,013&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;632&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Machinery and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,942&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,527&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,415&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Leasehold improvements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,306&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,086&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;220&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',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:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,237&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15,793&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,444&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;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&gt;&lt;td style="width:55.478%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.788%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.788%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.794%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Accumulated&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Net Book&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;December 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Depreciation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Value&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Computer equipment and software&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,945&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,575&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',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:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Furniture and fixtures&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;861&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',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:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;552&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Machinery and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,464&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,488&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,976&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Leasehold improvements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,064&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,842&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;222&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',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:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,334&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,214&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,120&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock>
    <us-gaap:PropertyPlantAndEquipmentTextBlock contextRef="c-1" id="f-786">&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&gt;&lt;td style="width:55.478%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.788%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.788%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.794%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Accumulated&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Net&#160;Book&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;June 30, 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Depreciation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Value&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Computer equipment and software&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,976&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,799&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;177&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Furniture and fixtures&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,013&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;632&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Machinery and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,942&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,527&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,415&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Leasehold improvements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,306&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,086&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;220&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',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:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,237&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15,793&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,444&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;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&gt;&lt;td style="width:55.478%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.788%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.788%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.794%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Accumulated&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Net Book&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;December 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Depreciation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Value&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Computer equipment and software&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,945&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,575&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',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:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Furniture and fixtures&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;861&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',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:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;552&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Machinery and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,464&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,488&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,976&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Leasehold improvements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,064&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,842&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;222&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',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:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,334&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,214&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,120&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:PropertyPlantAndEquipmentTextBlock>
    <us-gaap:PropertyPlantAndEquipmentGross contextRef="c-129" decimals="-3" id="f-787" unitRef="usd">2976000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment contextRef="c-129" decimals="-3" id="f-788" unitRef="usd">2799000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="c-129" decimals="-3" id="f-789" unitRef="usd">177000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentGross contextRef="c-130" decimals="-3" id="f-790" unitRef="usd">1013000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment contextRef="c-130" decimals="-3" id="f-791" unitRef="usd">381000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="c-130" decimals="-3" id="f-792" unitRef="usd">632000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentGross contextRef="c-131" decimals="-3" id="f-793" unitRef="usd">11942000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment contextRef="c-131" decimals="-3" id="f-794" unitRef="usd">8527000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="c-131" decimals="-3" id="f-795" unitRef="usd">3415000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentGross contextRef="c-132" decimals="-3" id="f-796" unitRef="usd">4306000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment contextRef="c-132" decimals="-3" id="f-797" unitRef="usd">4086000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="c-132" decimals="-3" id="f-798" unitRef="usd">220000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentGross contextRef="c-2" decimals="-3" id="f-799" unitRef="usd">20237000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment contextRef="c-2" decimals="-3" id="f-800" unitRef="usd">15793000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="c-2" decimals="-3" id="f-801" unitRef="usd">4444000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentGross contextRef="c-133" decimals="-3" id="f-802" unitRef="usd">2945000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment contextRef="c-133" decimals="-3" id="f-803" unitRef="usd">2575000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="c-133" decimals="-3" id="f-804" unitRef="usd">370000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentGross contextRef="c-134" decimals="-3" id="f-805" unitRef="usd">861000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment contextRef="c-134" decimals="-3" id="f-806" unitRef="usd">309000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="c-134" decimals="-3" id="f-807" unitRef="usd">552000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentGross contextRef="c-135" decimals="-3" id="f-808" unitRef="usd">9464000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment contextRef="c-135" decimals="-3" id="f-809" unitRef="usd">7488000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="c-135" decimals="-3" id="f-810" unitRef="usd">1976000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentGross contextRef="c-136" decimals="-3" id="f-811" unitRef="usd">4064000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment contextRef="c-136" decimals="-3" id="f-812" unitRef="usd">3842000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="c-136" decimals="-3" id="f-813" unitRef="usd">222000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentGross contextRef="c-3" decimals="-3" id="f-814" unitRef="usd">17334000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment contextRef="c-3" decimals="-3" id="f-815" unitRef="usd">14214000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="c-3" decimals="-3" id="f-816" unitRef="usd">3120000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock contextRef="c-1" id="f-817">&lt;div&gt;&lt;span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;10.          Accounts payable and accrued liabilities:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&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&gt;&lt;td style="width:60.303%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:17.613%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:17.616%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;June 30, 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;December 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Trade accounts payable&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;8,190&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;11,397&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Accrued payroll&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;3,261&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Taxes payable&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;3,812&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;3,813&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Deferred revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;330&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;533&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Due to related parties (note 14)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,001&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;1,137&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;17,594&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;19,435&#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&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock>
    <us-gaap:ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock contextRef="c-1" id="f-818">&lt;div style="margin-top:5pt"&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&gt;&lt;td style="width:60.303%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:17.613%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:17.616%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;June 30, 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;December 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Trade accounts payable&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;8,190&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;11,397&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Accrued payroll&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;3,261&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Taxes payable&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;3,812&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;3,813&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Deferred revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;330&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;533&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Due to related parties (note 14)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,001&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;1,137&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;17,594&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;19,435&#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&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock>
    <us-gaap:AccountsPayableTradeCurrent contextRef="c-2" decimals="-3" id="f-819" unitRef="usd">8190000</us-gaap:AccountsPayableTradeCurrent>
    <us-gaap:AccountsPayableTradeCurrent contextRef="c-3" decimals="-3" id="f-820" unitRef="usd">11397000</us-gaap:AccountsPayableTradeCurrent>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent contextRef="c-2" decimals="-3" id="f-821" unitRef="usd">3261000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent contextRef="c-3" decimals="-3" id="f-822" unitRef="usd">2555000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:AccruedIncomeTaxesCurrent contextRef="c-2" decimals="-3" id="f-823" unitRef="usd">3812000</us-gaap:AccruedIncomeTaxesCurrent>
    <us-gaap:AccruedIncomeTaxesCurrent contextRef="c-3" decimals="-3" id="f-824" unitRef="usd">3813000</us-gaap:AccruedIncomeTaxesCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent contextRef="c-2" decimals="-3" id="f-825" unitRef="usd">330000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent contextRef="c-3" decimals="-3" id="f-826" unitRef="usd">533000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:OtherNotesPayableCurrent contextRef="c-113" decimals="-3" id="f-827" unitRef="usd">2001000</us-gaap:OtherNotesPayableCurrent>
    <us-gaap:OtherNotesPayableCurrent contextRef="c-114" decimals="-3" id="f-828" unitRef="usd">1137000</us-gaap:OtherNotesPayableCurrent>
    <us-gaap:AccountsPayableAndAccruedLiabilitiesCurrent contextRef="c-2" decimals="-3" id="f-829" unitRef="usd">17594000</us-gaap:AccountsPayableAndAccruedLiabilitiesCurrent>
    <us-gaap:AccountsPayableAndAccruedLiabilitiesCurrent contextRef="c-3" decimals="-3" id="f-830" unitRef="usd">19435000</us-gaap:AccountsPayableAndAccruedLiabilitiesCurrent>
    <us-gaap:LesseeOperatingLeasesTextBlock contextRef="c-1" id="f-831">&lt;div&gt;&lt;span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;11.          Operating leases right-of-use assets and lease liabilities:&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company has entered into various non-cancellable operating lease agreements primarily for its manufacturing facilities and offices. The Company's leases have lease terms expiring between 2027 and 2030. Many leases include one or more options to renew. The Company does not assume renewals in its determination of the lease term unless the renewals are deemed to be reasonably assured at lease commencement. The average remaining lease term is approximately four years and the present value of the outstanding operating lease liability was determined applying a weighted average discount rate of 9.3% based on incremental borrowing rates applicable in each location.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:7.5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The components of lease cost are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;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&gt;&lt;td style="width:39.835%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.935%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.935%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.935%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.940%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Three months ended June 30,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Six months ended June 30,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Amortization of right-of-use assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;95&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;188&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;185&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;323&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Interest&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',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:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;44&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total lease cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;101&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;209&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;199&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;367&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;11.          Operating leases right-of-use assets and lease liabilities (continued):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:7.5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The maturities of lease liabilities as at June&#160;30, 2025 are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;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&gt;&lt;td style="width:80.186%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:16.884%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;The remainder of 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',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:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2026&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;595&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2027&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;608&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2028&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;551&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2029&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;487&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Thereafter&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;293&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total undiscounted cash flows&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,870&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',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="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;905&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Present value of operating lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,965&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less: current portion&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;633&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Long-term operating lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,332&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:LesseeOperatingLeasesTextBlock>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1 contextRef="c-2" id="f-832">P4Y</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent contextRef="c-2" decimals="3" id="f-833" unitRef="number">0.093</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:LeaseCostTableTextBlock contextRef="c-1" id="f-834">&lt;div style="margin-top:7.5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The components of lease cost are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;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&gt;&lt;td style="width:39.835%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.935%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.935%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.935%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.940%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Three months ended June 30,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Six months ended June 30,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Amortization of right-of-use assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;95&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;188&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;185&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;323&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Interest&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',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:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;44&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total lease cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;101&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;209&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;199&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;367&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:LeaseCostTableTextBlock>
    <us-gaap:FinanceLeaseRightOfUseAssetAmortization contextRef="c-4" decimals="-3" id="f-835" unitRef="usd">95000</us-gaap:FinanceLeaseRightOfUseAssetAmortization>
    <us-gaap:FinanceLeaseRightOfUseAssetAmortization contextRef="c-5" decimals="-3" id="f-836" unitRef="usd">188000</us-gaap:FinanceLeaseRightOfUseAssetAmortization>
    <us-gaap:FinanceLeaseRightOfUseAssetAmortization contextRef="c-1" decimals="-3" id="f-837" unitRef="usd">185000</us-gaap:FinanceLeaseRightOfUseAssetAmortization>
    <us-gaap:FinanceLeaseRightOfUseAssetAmortization contextRef="c-6" decimals="-3" id="f-838" unitRef="usd">323000</us-gaap:FinanceLeaseRightOfUseAssetAmortization>
    <us-gaap:FinanceLeaseInterestExpense contextRef="c-4" decimals="-3" id="f-839" unitRef="usd">6000</us-gaap:FinanceLeaseInterestExpense>
    <us-gaap:FinanceLeaseInterestExpense contextRef="c-5" decimals="-3" id="f-840" unitRef="usd">21000</us-gaap:FinanceLeaseInterestExpense>
    <us-gaap:FinanceLeaseInterestExpense contextRef="c-1" decimals="-3" id="f-841" unitRef="usd">14000</us-gaap:FinanceLeaseInterestExpense>
    <us-gaap:FinanceLeaseInterestExpense contextRef="c-6" decimals="-3" id="f-842" unitRef="usd">44000</us-gaap:FinanceLeaseInterestExpense>
    <us-gaap:LeaseCost contextRef="c-4" decimals="-3" id="f-843" unitRef="usd">101000</us-gaap:LeaseCost>
    <us-gaap:LeaseCost contextRef="c-5" decimals="-3" id="f-844" unitRef="usd">209000</us-gaap:LeaseCost>
    <us-gaap:LeaseCost contextRef="c-1" decimals="-3" id="f-845" unitRef="usd">199000</us-gaap:LeaseCost>
    <us-gaap:LeaseCost contextRef="c-6" decimals="-3" id="f-846" unitRef="usd">367000</us-gaap:LeaseCost>
    <us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock contextRef="c-1" id="f-847">&lt;div style="margin-top:7.5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The maturities of lease liabilities as at June&#160;30, 2025 are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;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&gt;&lt;td style="width:80.186%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:16.884%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;The remainder of 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',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:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2026&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;595&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2027&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;608&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2028&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;551&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2029&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;487&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Thereafter&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;293&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total undiscounted cash flows&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,870&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',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="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;905&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Present value of operating lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,965&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less: current portion&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;633&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Long-term operating lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,332&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear contextRef="c-2" decimals="-3" id="f-848" unitRef="usd">336000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths contextRef="c-2" decimals="-3" id="f-849" unitRef="usd">595000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo contextRef="c-2" decimals="-3" id="f-850" unitRef="usd">608000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree contextRef="c-2" decimals="-3" id="f-851" unitRef="usd">551000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour contextRef="c-2" decimals="-3" id="f-852" unitRef="usd">487000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour>
    <wprt:LesseeOperatingLeaseLiabilityToBePaidAfterYearFour contextRef="c-2" decimals="-3" id="f-853" unitRef="usd">293000</wprt:LesseeOperatingLeaseLiabilityToBePaidAfterYearFour>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue contextRef="c-2" decimals="-3" id="f-854" unitRef="usd">2870000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue>
    <us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount contextRef="c-2" decimals="-3" id="f-855" unitRef="usd">905000</us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount>
    <us-gaap:OperatingLeaseLiability contextRef="c-2" decimals="-3" id="f-856" unitRef="usd">1965000</us-gaap:OperatingLeaseLiability>
    <us-gaap:OperatingLeaseLiabilityCurrent contextRef="c-2" decimals="-3" id="f-857" unitRef="usd">633000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent contextRef="c-2" decimals="-3" id="f-858" unitRef="usd">1332000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:LongTermDebtTextBlock contextRef="c-1" id="f-859">&lt;div&gt;&lt;span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;12.          Long-term debt:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&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&gt;&lt;td style="width:26.531%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:16.590%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:15.566%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:17.613%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:17.616%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Term loan facility&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Maturity date&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Interest rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;June 30, 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;December 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;EDC&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;September 15, 2026&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;U.S. Prime Rate plus 2.01%&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;4,882&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;6,837&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;Current portion&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;3,905&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;3,905&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;Long-term portion&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;977&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,932&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="6" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Term loan facilities, net of debt issuance costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;4,882&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;6,837&#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&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 style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;On December 13, 2021, the credit facility and non-revolving term facility with EDC were refinanced into one $20,000 term loan, with quarterly principal and interest payments. On May 31, 2024, the Company amended the loan agreement with EDC to permit the asset transfer of certain property, plant, and equipment previously pledged to the loan into Cespira, removal of Fuel System Solutions Inc. as a borrower, added Westport Fuel Systems Canada Inc. as a borrower and modified the securities pledged to the loan. The loan is secured by share pledges in the Company's equity interest in Cespira.&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="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;Throughout the term of certain of these financing arrangements, the Company is required to meet certain financial and non-financial covenants. As at June&#160;30, 2025, the Company is in compliance with all covenants under the financing arrangements.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The principal repayment schedule of long-term debt is as follows as at June&#160;30, 2025: &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.976%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:78.663%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.538%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:18.399%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Term loan facility&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Remainder of 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;1,953&#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&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2026&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,929&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;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 #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;4,882&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:LongTermDebtTextBlock>
    <us-gaap:ScheduleOfDebtInstrumentsTextBlock contextRef="c-1" id="f-860">&lt;div style="margin-top:5pt"&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&gt;&lt;td style="width:26.531%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:16.590%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:15.566%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:17.613%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:17.616%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Term loan facility&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Maturity date&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Interest rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;June 30, 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;December 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;EDC&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;September 15, 2026&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;U.S. Prime Rate plus 2.01%&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;4,882&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;6,837&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;Current portion&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;3,905&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;3,905&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;Long-term portion&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;977&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,932&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="6" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Term loan facilities, net of debt issuance costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;4,882&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;6,837&#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&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfDebtInstrumentsTextBlock>
    <us-gaap:DebtInstrumentInterestRateEffectivePercentage contextRef="c-137" decimals="4" id="f-861" unitRef="number">0.0201</us-gaap:DebtInstrumentInterestRateEffectivePercentage>
    <us-gaap:DebtAndCapitalLeaseObligations contextRef="c-137" decimals="-3" id="f-862" unitRef="usd">4882000</us-gaap:DebtAndCapitalLeaseObligations>
    <us-gaap:DebtAndCapitalLeaseObligations contextRef="c-138" decimals="-3" id="f-863" unitRef="usd">6837000</us-gaap:DebtAndCapitalLeaseObligations>
    <us-gaap:LongTermDebtAndCapitalLeaseObligationsCurrent contextRef="c-59" decimals="-3" id="f-864" unitRef="usd">3905000</us-gaap:LongTermDebtAndCapitalLeaseObligationsCurrent>
    <us-gaap:LongTermDebtAndCapitalLeaseObligationsCurrent contextRef="c-139" decimals="-3" id="f-865" unitRef="usd">3905000</us-gaap:LongTermDebtAndCapitalLeaseObligationsCurrent>
    <us-gaap:LongTermDebtAndCapitalLeaseObligations contextRef="c-59" decimals="-3" id="f-866" unitRef="usd">977000</us-gaap:LongTermDebtAndCapitalLeaseObligations>
    <us-gaap:LongTermDebtAndCapitalLeaseObligations contextRef="c-139" decimals="-3" id="f-867" unitRef="usd">2932000</us-gaap:LongTermDebtAndCapitalLeaseObligations>
    <us-gaap:DebtAndCapitalLeaseObligations contextRef="c-59" decimals="-3" id="f-868" unitRef="usd">4882000</us-gaap:DebtAndCapitalLeaseObligations>
    <us-gaap:DebtAndCapitalLeaseObligations contextRef="c-139" decimals="-3" id="f-869" unitRef="usd">6837000</us-gaap:DebtAndCapitalLeaseObligations>
    <us-gaap:DebtInstrumentFaceAmount contextRef="c-140" decimals="INF" id="f-870" unitRef="usd">20000000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock contextRef="c-1" id="f-871">&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The principal repayment schedule of long-term debt is as follows as at June&#160;30, 2025: &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.976%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:78.663%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.538%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:18.399%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Term loan facility&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Remainder of 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;1,953&#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&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2026&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,929&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;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 #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;4,882&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear contextRef="c-59" decimals="-3" id="f-872" unitRef="usd">1953000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths contextRef="c-59" decimals="-3" id="f-873" unitRef="usd">2929000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths>
    <us-gaap:DebtInstrumentCarryingAmount contextRef="c-59" decimals="-3" id="f-874" unitRef="usd">4882000</us-gaap:DebtInstrumentCarryingAmount>
    <us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock contextRef="c-1" id="f-875">&lt;div&gt;&lt;span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;13.          Share capital, stock options and other stock-based plans:&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;During the three and six months ended June 30, 2025, the Company issued 24,273 and 68,071 common shares, respectively, net of cancellations, upon exercises of share units (three and six months ended June 30, 2024 &#x2013; 35,210 and 83,862 common shares, respectively). The Company issues&#160;shares from treasury to satisfy share unit exercises.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(a)&#160;&#160;&#160;&#160;Share Units (&#x201c;Units&#x201d;):&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="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The value assigned to issued Units and the amounts accrued are recorded as other equity instruments. As Units are exercised or vest and the underlying shares are issued from treasury of the Company, the value is reclassified to share capital.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;During the three and six months ended June 30, 2025&lt;/span&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;, the Company recognized $451 and $736, respectively (three and six months ended June 30, 2024 - $1,083 and $1,492, respectively) of stock-based compensation associated with the Westport Omnibus Plan. The Westport Omnibus Plan aims to advance the Company's interests by encouraging employees, consultants and non-employee directors to receive equity-based compensation and incentives. The plan outlines the stock-based options types, eligibility and vesting terms.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A continuity of the Units issued under the Westport Omnibus Plan are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:31.939%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.534%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:14.905%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.534%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:14.905%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.534%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:14.905%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.534%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:14.910%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Six months ended June 30, 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Six months ended June 30, 2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Number&#160;of&lt;br/&gt;Units&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Weighted&lt;br/&gt;average&lt;br/&gt;grant&lt;br/&gt;date&#160;fair&lt;br/&gt;value&lt;br/&gt;(CDN&#160;$)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Number&#160;of&lt;br/&gt;Units&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Weighted&lt;br/&gt;average&lt;br/&gt;grant&lt;br/&gt;date&#160;fair&lt;br/&gt;value&lt;br/&gt;(CDN&#160;$)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Outstanding, beginning of period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;524,322&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;11.75&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;478,643&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;15.68&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;137,151&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3.99&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;169,835&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8.56&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Exercised&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(68,071)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;17.48&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(83,862)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;17.93&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Forfeited/expired&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(117,296)&lt;/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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;11.36&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(38,406)&lt;/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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;26.07&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Outstanding, end of period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;476,106&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8.78&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;526,210&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;12.23&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Units outstanding and exercisable, end of period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;491&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;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:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;31.07&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;15,052&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;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:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;11.41&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&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="text-align:justify"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;During the &lt;/span&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;six months ended June 30, 2025&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;, &lt;/span&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;137,151 share units were granted to certain employees and directors (six months ended June 30, 2024 - 169,835). This included nil restricted share units (&#x201c;RSUs&#x201d;) (six months ended June 30, 2024 - 50,000), nil  performance share units (&#x201c;PSUs&#x201d;) (six months ended June 30, 2024 - nil) and 137,151 deferred share units ("DSUs") (six months ended June 30, 2024 - 119,835). &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="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Values of PSUs are determined using the Monte&#x2013;Carlo Simulation Model. RSUs typically vest over a three-year period so the actual value received by the individual depends on the share price on the day such RSUs are settled for common shares, not the date of grant. Vesting of DSUs shall occur immediately prior to the resignation, retirement or termination of directorship, in accordance with the terms of Westport's Omnibus Plan.&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="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As at June&#160;30, 2025, $540&#160;of compensation expense related to Units awarded has yet to be recognized in results from operations and will be recognized ratably over 1.6 years.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(b)&#160;&#160;&#160;&#160;Aggregate intrinsic values:&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify;text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The aggregate intrinsic value of the Company&#x2019;s share units at June&#160;30, 2025 as follows: &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&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&gt;&lt;td style="width:79.016%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:18.054%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;June 30, 2025&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;(CDN $)&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Share units:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Outstanding&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,578&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Exercisable&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;15&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Exercised&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;285&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(c)&#160;&#160;&#160;&#160;Stock-based compensation:&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="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Stock-based compensation associated with the Unit plans is included in operating expenses as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&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&gt;&lt;td style="width:38.081%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.373%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.373%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.373%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.380%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Three Months Ended June 30,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Six Months Ended June 30,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Cost of revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;36&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;77&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Research and development&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;15&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;53&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;28&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;163&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;General and administrative&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;433&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;945&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;680&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;1,144&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Sales and marketing&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;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;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;28&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;108&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;451&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;1,083&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;736&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;1,492&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Of the stock-based compensation expense recognized in the three and six months ended June 30, 2025, $181 and $393 will settle in shares and $270 and $343 will settle in cash respectively (three and six months ended June 30, 2024 - $302 and $633 will settle in shares and $781 and $859 will settle in cash, respectively).&lt;/span&gt;&lt;/div&gt;</us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation
      contextRef="c-39"
      decimals="INF"
      id="f-876"
      unitRef="shares">24273</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation
      contextRef="c-53"
      decimals="INF"
      id="f-877"
      unitRef="shares">68071</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation
      contextRef="c-13"
      decimals="INF"
      id="f-878"
      unitRef="shares">35210</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation
      contextRef="c-29"
      decimals="INF"
      id="f-879"
      unitRef="shares">83862</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c-4" decimals="-3" id="f-880" unitRef="usd">451000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c-1" decimals="-3" id="f-881" unitRef="usd">736000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c-5" decimals="-3" id="f-882" unitRef="usd">1083000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c-6" decimals="-3" id="f-883" unitRef="usd">1492000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock contextRef="c-1" id="f-884">&lt;div style="margin-top:5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A continuity of the Units issued under the Westport Omnibus Plan are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:31.939%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.534%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:14.905%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.534%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:14.905%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.534%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:14.905%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.534%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:14.910%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Six months ended June 30, 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Six months ended June 30, 2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Number&#160;of&lt;br/&gt;Units&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Weighted&lt;br/&gt;average&lt;br/&gt;grant&lt;br/&gt;date&#160;fair&lt;br/&gt;value&lt;br/&gt;(CDN&#160;$)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Number&#160;of&lt;br/&gt;Units&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Weighted&lt;br/&gt;average&lt;br/&gt;grant&lt;br/&gt;date&#160;fair&lt;br/&gt;value&lt;br/&gt;(CDN&#160;$)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Outstanding, beginning of period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;524,322&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;11.75&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;478,643&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;15.68&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;137,151&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3.99&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;169,835&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8.56&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Exercised&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(68,071)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;17.48&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(83,862)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;17.93&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Forfeited/expired&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(117,296)&lt;/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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;11.36&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(38,406)&lt;/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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;26.07&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Outstanding, end of period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;476,106&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8.78&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;526,210&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;12.23&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Units outstanding and exercisable, end of period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;491&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;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:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;31.07&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;15,052&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;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:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;11.41&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber
      contextRef="c-141"
      decimals="INF"
      id="f-885"
      unitRef="shares">524322</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber>
    <wprt:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingWeightedAverageGrantDateFairValue
      contextRef="c-141"
      decimals="2"
      id="f-886"
      unitRef="cadPerShare">11.75</wprt:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber
      contextRef="c-142"
      decimals="INF"
      id="f-887"
      unitRef="shares">478643</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber>
    <wprt:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingWeightedAverageGrantDateFairValue
      contextRef="c-142"
      decimals="2"
      id="f-888"
      unitRef="cadPerShare">15.68</wprt:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted
      contextRef="c-143"
      decimals="INF"
      id="f-889"
      unitRef="shares">137151</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted>
    <wprt:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGrantedWeightedAverageGrantDateFairValue
      contextRef="c-143"
      decimals="2"
      id="f-890"
      unitRef="cadPerShare">3.99</wprt:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGrantedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted
      contextRef="c-144"
      decimals="INF"
      id="f-891"
      unitRef="shares">169835</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted>
    <wprt:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGrantedWeightedAverageGrantDateFairValue
      contextRef="c-144"
      decimals="2"
      id="f-892"
      unitRef="cadPerShare">8.56</wprt:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGrantedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised
      contextRef="c-143"
      decimals="INF"
      id="f-893"
      unitRef="shares">68071</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised>
    <wprt:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercisedWeightedAverageGrantDateFairValue
      contextRef="c-143"
      decimals="2"
      id="f-894"
      unitRef="cadPerShare">17.48</wprt:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercisedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised
      contextRef="c-144"
      decimals="INF"
      id="f-895"
      unitRef="shares">83862</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised>
    <wprt:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercisedWeightedAverageGrantDateFairValue
      contextRef="c-144"
      decimals="2"
      id="f-896"
      unitRef="cadPerShare">17.93</wprt:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercisedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirations
      contextRef="c-143"
      decimals="INF"
      id="f-897"
      unitRef="shares">117296</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirations>
    <wprt:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirationsWeightedAverageGrantDateFairValue
      contextRef="c-143"
      decimals="2"
      id="f-898"
      unitRef="cadPerShare">11.36</wprt:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirationsWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirations
      contextRef="c-144"
      decimals="INF"
      id="f-899"
      unitRef="shares">38406</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirations>
    <wprt:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirationsWeightedAverageGrantDateFairValue
      contextRef="c-144"
      decimals="2"
      id="f-900"
      unitRef="cadPerShare">26.07</wprt:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeituresAndExpirationsWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber
      contextRef="c-145"
      decimals="INF"
      id="f-901"
      unitRef="shares">476106</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber>
    <wprt:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingWeightedAverageGrantDateFairValue
      contextRef="c-145"
      decimals="2"
      id="f-902"
      unitRef="cadPerShare">8.78</wprt:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber
      contextRef="c-146"
      decimals="INF"
      id="f-903"
      unitRef="shares">526210</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber>
    <wprt:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingWeightedAverageGrantDateFairValue
      contextRef="c-146"
      decimals="2"
      id="f-904"
      unitRef="cadPerShare">12.23</wprt:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingWeightedAverageGrantDateFairValue>
    <wprt:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingAndExercisableNumber
      contextRef="c-145"
      decimals="INF"
      id="f-905"
      unitRef="shares">491</wprt:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingAndExercisableNumber>
    <wprt:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingAndExercisableWeightedAverageGrantDateFairValue
      contextRef="c-145"
      decimals="2"
      id="f-906"
      unitRef="cadPerShare">31.07</wprt:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingAndExercisableWeightedAverageGrantDateFairValue>
    <wprt:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingAndExercisableNumber
      contextRef="c-146"
      decimals="INF"
      id="f-907"
      unitRef="shares">15052</wprt:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingAndExercisableNumber>
    <wprt:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingAndExercisableWeightedAverageGrantDateFairValue
      contextRef="c-146"
      decimals="2"
      id="f-908"
      unitRef="cadPerShare">11.41</wprt:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingAndExercisableWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted
      contextRef="c-143"
      decimals="INF"
      id="f-909"
      unitRef="shares">137151</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted
      contextRef="c-144"
      decimals="INF"
      id="f-910"
      unitRef="shares">169835</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted
      contextRef="c-147"
      decimals="INF"
      id="f-911"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted
      contextRef="c-148"
      decimals="INF"
      id="f-912"
      unitRef="shares">50000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted
      contextRef="c-149"
      decimals="INF"
      id="f-913"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted
      contextRef="c-150"
      decimals="INF"
      id="f-914"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted
      contextRef="c-151"
      decimals="INF"
      id="f-915"
      unitRef="shares">137151</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted
      contextRef="c-152"
      decimals="INF"
      id="f-916"
      unitRef="shares">119835</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1 contextRef="c-147" id="f-917">P3Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized contextRef="c-145" decimals="-3" id="f-918" unitRef="usd">540000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1 contextRef="c-143" id="f-919">P1Y7M6D</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <wprt:ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardIntrinsicValueTableTextBlock contextRef="c-1" id="f-920">&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The aggregate intrinsic value of the Company&#x2019;s share units at June&#160;30, 2025 as follows: &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&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&gt;&lt;td style="width:79.016%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:18.054%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;June 30, 2025&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;(CDN $)&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Share units:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Outstanding&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,578&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Exercisable&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;15&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Exercised&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;285&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</wprt:ScheduleOfShareBasedCompensationArrangementByShareBasedPaymentAwardIntrinsicValueTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue contextRef="c-2" decimals="-3" id="f-921" unitRef="usd">2578000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1 contextRef="c-2" decimals="-3" id="f-922" unitRef="usd">15000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue contextRef="c-1" decimals="-3" id="f-923" unitRef="usd">285000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock contextRef="c-1" id="f-924">&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Stock-based compensation associated with the Unit plans is included in operating expenses as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&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&gt;&lt;td style="width:38.081%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.373%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.373%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.373%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.380%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Three Months Ended June 30,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Six Months Ended June 30,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Cost of revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;36&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;77&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Research and development&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;15&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;53&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;28&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;163&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;General and administrative&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;433&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;945&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;680&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;1,144&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Sales and marketing&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;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;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;28&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;108&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;451&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;1,083&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;736&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;1,492&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c-153" decimals="-3" id="f-925" unitRef="usd">0</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c-154" decimals="-3" id="f-926" unitRef="usd">36000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c-155" decimals="-3" id="f-927" unitRef="usd">0</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c-156" decimals="-3" id="f-928" unitRef="usd">77000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c-157" decimals="-3" id="f-929" unitRef="usd">15000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c-158" decimals="-3" id="f-930" unitRef="usd">53000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c-159" decimals="-3" id="f-931" unitRef="usd">28000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c-160" decimals="-3" id="f-932" unitRef="usd">163000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c-161" decimals="-3" id="f-933" unitRef="usd">433000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c-162" decimals="-3" id="f-934" unitRef="usd">945000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c-163" decimals="-3" id="f-935" unitRef="usd">680000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c-164" decimals="-3" id="f-936" unitRef="usd">1144000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c-165" decimals="-3" id="f-937" unitRef="usd">3000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c-166" decimals="-3" id="f-938" unitRef="usd">49000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c-167" decimals="-3" id="f-939" unitRef="usd">28000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c-168" decimals="-3" id="f-940" unitRef="usd">108000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c-4" decimals="-3" id="f-941" unitRef="usd">451000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c-5" decimals="-3" id="f-942" unitRef="usd">1083000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c-1" decimals="-3" id="f-943" unitRef="usd">736000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c-6" decimals="-3" id="f-944" unitRef="usd">1492000</us-gaap:AllocatedShareBasedCompensationExpense>
    <wprt:ShareBasedPaymentArrangementExpenseSettledInShares contextRef="c-4" decimals="-3" id="f-945" unitRef="usd">181000</wprt:ShareBasedPaymentArrangementExpenseSettledInShares>
    <wprt:ShareBasedPaymentArrangementExpenseSettledInShares contextRef="c-1" decimals="-3" id="f-946" unitRef="usd">393000</wprt:ShareBasedPaymentArrangementExpenseSettledInShares>
    <wprt:ShareBasedPaymentArrangementExpenseSettledInCash contextRef="c-4" decimals="-3" id="f-947" unitRef="usd">270000</wprt:ShareBasedPaymentArrangementExpenseSettledInCash>
    <wprt:ShareBasedPaymentArrangementExpenseSettledInCash contextRef="c-1" decimals="-3" id="f-948" unitRef="usd">343000</wprt:ShareBasedPaymentArrangementExpenseSettledInCash>
    <wprt:ShareBasedPaymentArrangementExpenseSettledInShares contextRef="c-5" decimals="-3" id="f-949" unitRef="usd">302000</wprt:ShareBasedPaymentArrangementExpenseSettledInShares>
    <wprt:ShareBasedPaymentArrangementExpenseSettledInShares contextRef="c-6" decimals="-3" id="f-950" unitRef="usd">633000</wprt:ShareBasedPaymentArrangementExpenseSettledInShares>
    <wprt:ShareBasedPaymentArrangementExpenseSettledInCash contextRef="c-5" decimals="-3" id="f-951" unitRef="usd">781000</wprt:ShareBasedPaymentArrangementExpenseSettledInCash>
    <wprt:ShareBasedPaymentArrangementExpenseSettledInCash contextRef="c-6" decimals="-3" id="f-952" unitRef="usd">859000</wprt:ShareBasedPaymentArrangementExpenseSettledInCash>
    <us-gaap:RelatedPartyTransactionsDisclosureTextBlock contextRef="c-1" id="f-953">&lt;div&gt;&lt;span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;14.          Related party transactions:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company's related parties are Cespira, directors, officers and shareholders that own more than 10% of the Company's shares.&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="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company engages in transactions with Cespira primarily through the provision of services and the sale of inventory under the transitional services agreement and cross-charges.&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:6pt;margin-top:6pt;text-align:justify"&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&gt;&lt;td style="width:39.250%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.373%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.373%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.373%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.379%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Related party transactions with Cespira&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Three months ended June 30,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Six months ended June 30,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Sales of goods, services, and other income&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,721&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;534&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15,280&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;534&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Inventory purchased, services and other expenses&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:'Montserrat',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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,898&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',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&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify"&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&gt;&lt;td style="width:60.888%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:17.613%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:17.615%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Related party balances with Cespira&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;June 30, 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;December 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Receivables (note 6)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,505&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,973&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Payables (note 10)&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:'Montserrat',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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,001&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,137&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:RelatedPartyTransactionsDisclosureTextBlock>
    <us-gaap:ScheduleOfRelatedPartyTransactionsTableTextBlock contextRef="c-1" id="f-954">&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify"&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&gt;&lt;td style="width:39.250%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.373%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.373%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.373%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.379%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Related party transactions with Cespira&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Three months ended June 30,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Six months ended June 30,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Sales of goods, services, and other income&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,721&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;534&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15,280&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;534&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Inventory purchased, services and other expenses&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:'Montserrat',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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,898&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',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&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:justify"&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&gt;&lt;td style="width:60.888%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:17.613%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:17.615%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Related party balances with Cespira&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;June 30, 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;December 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Receivables (note 6)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,505&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,973&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Payables (note 10)&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:'Montserrat',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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,001&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',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:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,137&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfRelatedPartyTransactionsTableTextBlock>
    <us-gaap:RelatedPartyTransactionAmountsOfTransaction contextRef="c-169" decimals="-3" id="f-955" unitRef="usd">9721000</us-gaap:RelatedPartyTransactionAmountsOfTransaction>
    <us-gaap:RelatedPartyTransactionAmountsOfTransaction contextRef="c-170" decimals="-3" id="f-956" unitRef="usd">534000</us-gaap:RelatedPartyTransactionAmountsOfTransaction>
    <us-gaap:RelatedPartyTransactionAmountsOfTransaction contextRef="c-171" decimals="-3" id="f-957" unitRef="usd">15280000</us-gaap:RelatedPartyTransactionAmountsOfTransaction>
    <us-gaap:RelatedPartyTransactionAmountsOfTransaction contextRef="c-172" decimals="-3" id="f-958" unitRef="usd">534000</us-gaap:RelatedPartyTransactionAmountsOfTransaction>
    <us-gaap:RelatedPartyTransactionAmountsOfTransaction contextRef="c-173" decimals="-3" id="f-959" unitRef="usd">1288000</us-gaap:RelatedPartyTransactionAmountsOfTransaction>
    <us-gaap:RelatedPartyTransactionAmountsOfTransaction contextRef="c-174" decimals="-3" id="f-960" unitRef="usd">0</us-gaap:RelatedPartyTransactionAmountsOfTransaction>
    <us-gaap:RelatedPartyTransactionAmountsOfTransaction contextRef="c-175" decimals="-3" id="f-961" unitRef="usd">1898000</us-gaap:RelatedPartyTransactionAmountsOfTransaction>
    <us-gaap:RelatedPartyTransactionAmountsOfTransaction contextRef="c-176" decimals="-3" id="f-962" unitRef="usd">0</us-gaap:RelatedPartyTransactionAmountsOfTransaction>
    <us-gaap:OtherReceivablesNetCurrent contextRef="c-177" decimals="-3" id="f-963" unitRef="usd">12505000</us-gaap:OtherReceivablesNetCurrent>
    <us-gaap:OtherReceivablesNetCurrent contextRef="c-178" decimals="-3" id="f-964" unitRef="usd">4973000</us-gaap:OtherReceivablesNetCurrent>
    <us-gaap:AccountsPayableCurrentAndNoncurrent contextRef="c-177" decimals="-3" id="f-965" unitRef="usd">2001000</us-gaap:AccountsPayableCurrentAndNoncurrent>
    <us-gaap:AccountsPayableCurrentAndNoncurrent contextRef="c-178" decimals="-3" id="f-966" unitRef="usd">1137000</us-gaap:AccountsPayableCurrentAndNoncurrent>
    <us-gaap:CommitmentsAndContingenciesDisclosureTextBlock contextRef="c-1" id="f-967">&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;15.          Commitments and contingencies:&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(a)&#160;&#160;&#160;&#160;Contractual commitments&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify;text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company is a party to a variety of agreements in the ordinary course of business under which it is obligated to indemnify a third party with respect to certain matters. Typically, these obligations arise as a result of contracts for sale of the Company&#x2019;s product to customers where the Company provides indemnification against losses arising from matters such as product liabilities. The potential impact on the Company&#x2019;s financial results is not subject to reasonable estimation because considerable uncertainty exists as to whether claims will be made and the final outcome of potential claims. To date, the Company has not incurred significant costs related to these types of indemnifications.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;(b) &#160;&#160;&#160;&#160;Contingencies&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:8pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company is engaged in certain legal actions and tax audits in the ordinary course of business and believes that, based on the information currently available, the ultimate outcome of these actions will not have a material adverse effect on our operating results, liquidity or financial position.&lt;/span&gt;&lt;/div&gt;</us-gaap:CommitmentsAndContingenciesDisclosureTextBlock>
    <us-gaap:SegmentReportingDisclosureTextBlock contextRef="c-1" id="f-968">&lt;div&gt;&lt;span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;16.          Segment information:&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:-36pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As a result of the classification of the Light-Duty segment as discontinued operations (note 5), the Company reports its results in the following three reportable segments: High-Pressure Controls &amp;amp; Systems, Heavy-Duty OEM, and Cespira. The prior year comparatives were recast to reflect this change in reportable segments.&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="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Segment earnings or losses before income taxes, interest, depreciation, and amortization ("Segment EBITDA") is the measure of segment profitability used by the Company. The accounting policies of our reportable segments are the same as those applied in our consolidated financial statements. Management prepared the financial results of the Company's reportable segments on basis that is consistent with the manner in which Management internally disaggregates financial information to assist in making internal operating decisions. Certain common costs and expenses were allocated among segments and presented differently than the Company would for stand-alone financial information prepared in accordance with GAAP. These include certain costs and expenses of shared services, such as IT, human resources, legal, finance and supply chain management. Segment EBITDA is not defined under US GAAP and may not be comparable to similarly titled measures used by other companies and should not be considered a substitute for net earnings or other results reported in accordance with GAAP.&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="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company's Chief Operating Decision Maker ("CODM") uses Segment EBITDA disclosed below to evaluate the performance of its reportable segments. The Company believes Segment EBITDA is most reflective of the operational profitability or loss of its reportable segments. The CODM uses this information to drive decisions and resource allocations. Segment EBITDA is used as the key profitability measure when the Company sets its annual budget.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;16.          Segment information (continued):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Financial information by reportable segment as follows: &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;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&gt;&lt;td style="width:47.438%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.326%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.326%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.326%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.332%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="21" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Three months ended June 30, 2025&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;High-Pressure Controls &amp;amp; Systems&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Heavy-Duty OEM&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cespira&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total Segment&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,896&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9,602&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;12,020&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;24,518&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cost of revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,791&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,865&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;13,946&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;25,602&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Gross profit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;105&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;737&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,926)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,084)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Operating expenses:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Research and development&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,635&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;22&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,888&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,545&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;General and administrative&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;386&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,692&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,112&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Sales and marketing&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;23&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;322&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;348&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Depreciation and amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;59&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;860&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;919&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,103&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;59&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,762&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,924&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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;div&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Add back: Depreciation and amortization&lt;/span&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;1&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;149&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;772&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;921&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Segment EBITDA&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,849)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;678&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(6,916)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(8,087)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:47.211%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.381%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.387%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.381%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.387%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.381%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.387%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.385%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="21" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Three months ended June 30, 2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;High-Pressure Controls &amp;amp; Systems&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Heavy-Duty OEM&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cespira&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total Segment&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,562&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;10,547&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,059&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;18,168&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cost of revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,453&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9,297&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,901&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;15,651&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Gross profit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,109&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,250&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;158&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,517&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Operating expenses:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Research and development&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,408&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,052&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,121&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,581&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;General and administrative&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;303&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,156&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;715&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,174&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Sales and marketing&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;130&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;352&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;69&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;551&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Depreciation and amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;43&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;265&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;312&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,884&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,564&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,170&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,618&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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;div&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Add back: Depreciation and amortization&lt;/span&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;1&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;118&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;505&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;623&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Segment EBITDA&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(657)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(2,314)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,507)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(4,478)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:3pt double #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:3pt double #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:3pt double #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:3pt double #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;16.          Segment information (continued):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:96.637%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:45.647%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.759%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.405%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.759%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.405%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.759%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.405%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.761%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="21" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Six months ended June 30, 2025&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;High-Pressure Controls &amp;amp; Systems&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Heavy-Duty OEM&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cespira&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total Segment&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,786&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;15,035&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;28,819&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;48,640&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cost of revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,168&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;13,276&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;30,230&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;47,674&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Gross profit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;618&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,759&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,411)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;966&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Operating expenses:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Research and development&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,734&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;133&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,890&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,757&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;General and administrative&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;705&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;99&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,419&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,223&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Sales and marketing&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;150&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;23&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;618&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;791&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Depreciation and amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;115&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,590&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,705&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,704&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;255&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;12,517&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;16,476&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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;div&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Add back: Depreciation and amortization&lt;/span&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;1&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;289&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,392&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,681&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Segment EBITDA&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(2,797)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,504&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(11,536)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(12,829)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:3pt double #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:3pt double #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:3pt double #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:3pt double #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.245%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:46.519%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.548%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.395%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.548%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.395%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.548%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.395%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.552%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="21" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Six months ended June 30, 2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;High-Pressure Controls &amp;amp; Systems&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Heavy-Duty OEM&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cespira&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total Segment&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,049&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;22,488&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,059&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;32,596&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cost of revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;22,307&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,901&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;30,621&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Gross profit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,636&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;181&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;158&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,975&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Operating expenses:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Research and development&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,951&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,858&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,121&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,930&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;General and administrative&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;496&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,919&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;715&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,130&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Sales and marketing&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;362&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;849&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;69&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,280&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Depreciation and amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;85&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;121&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;265&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;471&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,894&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,747&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,170&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;14,811&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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;div&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Add back: Depreciation and amortization&lt;/span&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;1&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;226&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,391&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;505&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,122&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Segment EBITDA&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(2,032)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(7,175)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,507)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(10,714)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;16.          Segment information (continued):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Reconciliations of reportable segment financial information to consolidated statement of operations:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&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&gt;&lt;td style="width:38.373%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.081%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.081%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.081%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:15.132%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="21" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Three months ended June 30, 2025&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total Segment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Less: Cespira&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Add: Corporate &amp;amp; unallocated&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total Consolidated&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Revenue&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;24,518&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;12,020&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;12,498&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cost of revenue&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;25,602&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;13,946&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;11,656&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Gross profit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,084)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,926)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;842&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Operating expenses:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Research and development&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,545&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,888&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,657&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;General and administrative&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,112&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,692&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,686&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,106&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Sales and marketing&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;348&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;322&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;264&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;290&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Depreciation and amortization&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;919&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;860&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;47&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;106&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,924&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,762&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,997&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,159&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Equity income (loss)&lt;/span&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(3,686)&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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(3,686)&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&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:justify"&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&gt;&lt;td style="width:38.373%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.081%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.081%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.081%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:15.132%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="21" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Three months ended June 30, 2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total Segment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Less: Cespira&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Add: Corporate &amp;amp; unallocated&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total Consolidated&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Revenue&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;18,168&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,059&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;14,109&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cost of revenue&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;15,651&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,901&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;11,750&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Gross profit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,517&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;158&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,359&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Operating expenses:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Research and development&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,581&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,121&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,460&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;General and administrative&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,174&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;715&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,261&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,720&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Sales and marketing&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;551&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;69&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;480&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;962&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Depreciation and amortization&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;312&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;265&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;51&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;98&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,618&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,170&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,792&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;10,240&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Equity income (loss)&lt;/span&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,102)&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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,102)&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&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:justify"&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&gt;&lt;td style="width:38.373%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.081%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.081%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.081%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:15.132%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="21" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Six months ended June 30, 2025&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total Segment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Less: Cespira&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Add: Corporate &amp;amp; unallocated&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total Consolidated&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Revenue&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;48,640&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;28,819&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;19,821&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cost of revenue&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;47,674&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;30,230&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;17,444&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Gross profit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;966&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,411)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,377&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Operating expenses:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Research and development&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,757&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,890&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,867&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;General and administrative&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,223&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,419&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,974&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,778&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Sales and marketing&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;791&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;618&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;560&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;733&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Depreciation and amortization&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,705&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,590&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;99&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;214&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;16,476&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;12,517&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,633&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;10,592&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Equity income (loss)&lt;/span&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(7,570)&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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(7,570)&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&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;16.          Segment information (continued):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:justify"&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&gt;&lt;td style="width:38.373%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.081%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.081%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.081%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:15.132%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="21" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Six months ended June 30, 2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total Segment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Less: Cespira&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Add: Corporate &amp;amp; unallocated&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total Consolidated&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Revenue&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;32,596&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,059&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;28,537&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cost of revenue&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;30,621&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,901&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;26,720&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Gross profit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,975&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;158&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,817&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Operating expenses:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Research and development&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,930&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,121&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,809&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;General and administrative&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,130&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;715&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9,500&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;12,915&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Sales and marketing&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,280&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;69&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;872&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,083&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Depreciation and amortization&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;471&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;265&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;250&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;456&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;14,811&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,170&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;10,622&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;23,263&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Equity income (loss)&lt;/span&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,102)&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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,102)&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&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:justify"&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&gt;&lt;td style="width:57.379%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.695%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.695%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.695%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.700%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Reconciliation of Segment EBITDA to Loss before income taxes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Three months ended June 30,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Six months ended June 30,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total Segment EBITDA&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(8,087)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(4,478)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(12,829)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(10,714)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Adjustments:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="padding-left:6pt"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Depreciation and amortization&lt;/span&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;1&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;196&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;169&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;388&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,867&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cespira's Segment EBITDA&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(6,916)&lt;/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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,507)&lt;/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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(11,536)&lt;/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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,507)&lt;/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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Loss on investments accounted for under the equity method (note 8)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,686&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,102&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,570&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,102&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Corporate and unallocated operating expenses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,950&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,741&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,534&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;10,372&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Foreign exchange (loss) gain&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(4,224)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(141)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(5,427)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,795&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Gain on deconsolidation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(13,266)&lt;/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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(13,266)&lt;/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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Interest on long-term debt&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;166&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;288&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;358&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;603&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Interest and other income, net of bank charges&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;147&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(95)&lt;/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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(502)&lt;/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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(21)&lt;/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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Loss before income taxes in continuing operations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(5,092)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,231&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(10,214)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(11,659)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:5.2pt;font-weight:400;line-height:120%;position:relative;top:-2.8pt;vertical-align:baseline"&gt;1&lt;/span&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:120%"&gt;Depreciation and amortization expenses used in computation for Segment EBITDA and reconciliation to consolidated loss before income taxes are included in cost of revenue and operating expenses on our statement of operations and comprehensive income (loss).&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;16.          Segment information (continued):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&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&gt;&lt;td style="width:57.233%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.695%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.695%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.695%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.700%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Three months ended June 30,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Six months ended June 30,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Total additions to long-lived assets, excluding business combinations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;High-Pressure Controls &amp;amp; Systems&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;821&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;991&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;1,379&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;1,437&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Heavy-Duty OEM&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;569&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Corporate and unallocated&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;16&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Total consolidated&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;822&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;1,262&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;1,395&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,006&#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&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Cespira's total additions to long-lived assets, excluding business combinations for the three and six months ended June 30, 2025 was $322 and $1,571, respectively (three and six months ended June 30, 2024 was $10).&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="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Revenues are attributable to geographical regions based on the location of the Company&#x2019;s customers and are presented as a percentage of the Company's continuing revenues, as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&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&gt;&lt;td style="width:39.835%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.935%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.935%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.935%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.940%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="21" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;% of revenue&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Three months ended June 30,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Six months ended June 30,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Europe&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;79&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;85&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;79&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;87&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Asia&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;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;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;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&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;11&#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:'Montserrat',sans-serif;font-size:9.5pt;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&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;14&#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:'Montserrat',sans-serif;font-size:9.5pt;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&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:'Montserrat',sans-serif;font-size:9.5pt;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;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Americas&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;5&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;4&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;7&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;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;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The measure of segment assets evaluated by the CODM are total assets as reported on the consolidated balance sheet. Total assets are allocated as follows&lt;/span&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:120%"&gt;:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:60.393%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.385%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:17.640%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.385%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:17.497%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Total assets by segment&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;span id="i8d100b17301b49a6a09a6daf522635dc_0-0-1-1-276174"&gt;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;June 30, 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;December 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Light-Duty (Held-for-sale)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;201,719&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;207,893&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;High-Pressure Controls &amp;amp; Systems&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;14,112&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;9,026&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Heavy-Duty OEM&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;12,429&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;9,138&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Corporate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;43,794&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;65,564&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Total consolidated assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;272,054&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;291,621&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:SegmentReportingDisclosureTextBlock>
    <us-gaap:NumberOfReportableSegments
      contextRef="c-1"
      decimals="INF"
      id="f-969"
      unitRef="segment">3</us-gaap:NumberOfReportableSegments>
    <us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock contextRef="c-1" id="f-970">&lt;div&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Financial information by reportable segment as follows: &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;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&gt;&lt;td style="width:47.438%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.326%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.326%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.326%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.332%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="21" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Three months ended June 30, 2025&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;High-Pressure Controls &amp;amp; Systems&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Heavy-Duty OEM&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cespira&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total Segment&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,896&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9,602&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;12,020&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;24,518&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cost of revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,791&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,865&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;13,946&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;25,602&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Gross profit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;105&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;737&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,926)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,084)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Operating expenses:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Research and development&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,635&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;22&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,888&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,545&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;General and administrative&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;386&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,692&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,112&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Sales and marketing&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;23&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;322&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;348&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Depreciation and amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;59&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;860&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;919&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,103&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;59&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,762&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,924&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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;div&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Add back: Depreciation and amortization&lt;/span&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;1&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;149&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;772&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;921&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Segment EBITDA&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,849)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;678&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(6,916)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(8,087)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:47.211%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.381%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.387%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.381%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.387%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.381%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.387%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.385%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="21" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Three months ended June 30, 2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;High-Pressure Controls &amp;amp; Systems&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Heavy-Duty OEM&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cespira&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total Segment&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,562&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;10,547&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,059&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;18,168&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cost of revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,453&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9,297&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,901&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;15,651&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Gross profit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,109&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,250&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;158&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,517&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Operating expenses:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Research and development&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,408&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,052&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,121&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,581&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;General and administrative&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;303&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,156&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;715&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,174&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Sales and marketing&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;130&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;352&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;69&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;551&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Depreciation and amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;43&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;265&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;312&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,884&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,564&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,170&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,618&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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;div&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Add back: Depreciation and amortization&lt;/span&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;1&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;118&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;505&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;623&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Segment EBITDA&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(657)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(2,314)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,507)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(4,478)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:3pt double #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:3pt double #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:3pt double #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:3pt double #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;16.          Segment information (continued):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:96.637%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:45.647%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.759%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.405%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.759%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.405%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.759%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.405%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.761%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="21" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Six months ended June 30, 2025&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;High-Pressure Controls &amp;amp; Systems&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Heavy-Duty OEM&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cespira&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total Segment&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,786&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;15,035&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;28,819&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;48,640&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cost of revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,168&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;13,276&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;30,230&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;47,674&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Gross profit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;618&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,759&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,411)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;966&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Operating expenses:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Research and development&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,734&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;133&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,890&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,757&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;General and administrative&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;705&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;99&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,419&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,223&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Sales and marketing&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;150&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;23&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;618&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;791&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Depreciation and amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;115&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,590&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,705&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,704&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;255&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;12,517&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;16,476&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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;div&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Add back: Depreciation and amortization&lt;/span&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;1&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;289&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,392&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,681&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Segment EBITDA&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(2,797)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,504&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(11,536)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(12,829)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:3pt double #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:3pt double #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:3pt double #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:3pt double #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.245%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:46.519%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.548%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.395%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.548%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.395%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.548%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.395%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.552%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="21" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Six months ended June 30, 2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;High-Pressure Controls &amp;amp; Systems&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Heavy-Duty OEM&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cespira&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total Segment&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,049&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;22,488&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,059&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;32,596&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cost of revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;22,307&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,901&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;30,621&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Gross profit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,636&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;181&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;158&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,975&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Operating expenses:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Research and development&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,951&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,858&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,121&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,930&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;General and administrative&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;496&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,919&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;715&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,130&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Sales and marketing&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;362&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;849&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;69&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,280&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Depreciation and amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;85&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;121&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;265&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;471&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,894&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,747&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,170&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;14,811&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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;div&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Add back: Depreciation and amortization&lt;/span&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;1&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;226&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,391&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;505&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,122&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Segment EBITDA&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(2,032)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(7,175)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,507)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(10,714)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;16.          Segment information (continued):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Reconciliations of reportable segment financial information to consolidated statement of operations:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&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&gt;&lt;td style="width:38.373%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.081%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.081%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.081%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:15.132%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="21" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Three months ended June 30, 2025&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total Segment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Less: Cespira&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Add: Corporate &amp;amp; unallocated&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total Consolidated&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Revenue&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;24,518&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;12,020&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;12,498&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cost of revenue&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;25,602&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;13,946&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;11,656&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Gross profit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,084)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,926)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;842&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Operating expenses:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Research and development&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,545&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,888&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,657&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;General and administrative&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,112&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,692&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,686&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,106&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Sales and marketing&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;348&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;322&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;264&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;290&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Depreciation and amortization&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;919&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;860&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;47&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;106&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,924&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,762&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,997&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,159&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Equity income (loss)&lt;/span&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(3,686)&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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(3,686)&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&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:justify"&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&gt;&lt;td style="width:38.373%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.081%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.081%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.081%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:15.132%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="21" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Three months ended June 30, 2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total Segment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Less: Cespira&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Add: Corporate &amp;amp; unallocated&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total Consolidated&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Revenue&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;18,168&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,059&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;14,109&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cost of revenue&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;15,651&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,901&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;11,750&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Gross profit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,517&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;158&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,359&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Operating expenses:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Research and development&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,581&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,121&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,460&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;General and administrative&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,174&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;715&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,261&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,720&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Sales and marketing&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;551&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;69&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;480&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;962&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Depreciation and amortization&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;312&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;265&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;51&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;98&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,618&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,170&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,792&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;10,240&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Equity income (loss)&lt;/span&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,102)&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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,102)&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&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:justify"&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&gt;&lt;td style="width:38.373%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.081%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.081%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.081%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:15.132%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="21" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Six months ended June 30, 2025&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total Segment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Less: Cespira&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Add: Corporate &amp;amp; unallocated&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total Consolidated&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Revenue&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;48,640&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;28,819&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;19,821&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cost of revenue&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;47,674&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;30,230&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;17,444&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Gross profit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;966&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,411)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,377&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Operating expenses:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Research and development&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,757&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,890&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,867&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;General and administrative&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,223&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,419&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,974&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,778&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Sales and marketing&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;791&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;618&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;560&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;733&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Depreciation and amortization&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,705&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,590&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;99&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;214&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;16,476&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;12,517&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,633&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;10,592&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Equity income (loss)&lt;/span&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(7,570)&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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(7,570)&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&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;16.          Segment information (continued):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:justify"&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&gt;&lt;td style="width:38.373%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.081%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.081%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.081%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:15.132%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="21" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Six months ended June 30, 2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total Segment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Less: Cespira&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Add: Corporate &amp;amp; unallocated&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total Consolidated&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Revenue&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;32,596&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,059&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;28,537&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cost of revenue&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;30,621&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,901&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;26,720&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Gross profit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,975&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;158&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,817&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Operating expenses:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Research and development&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,930&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,121&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,809&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;General and administrative&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,130&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;715&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9,500&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;12,915&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Sales and marketing&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,280&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;69&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;872&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,083&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Depreciation and amortization&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;471&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;265&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;250&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;456&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;14,811&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,170&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;10,622&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;23,263&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Equity income (loss)&lt;/span&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,102)&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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,102)&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&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:justify"&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&gt;&lt;td style="width:57.379%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.695%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.695%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.695%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.700%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Reconciliation of Segment EBITDA to Loss before income taxes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Three months ended June 30,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Six months ended June 30,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total Segment EBITDA&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(8,087)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(4,478)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(12,829)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(10,714)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Adjustments:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="padding-left:6pt"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Depreciation and amortization&lt;/span&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;1&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;196&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;169&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;388&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,867&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cespira's Segment EBITDA&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(6,916)&lt;/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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,507)&lt;/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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(11,536)&lt;/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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,507)&lt;/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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Loss on investments accounted for under the equity method (note 8)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,686&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,102&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,570&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,102&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Corporate and unallocated operating expenses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,950&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,741&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,534&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;10,372&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Foreign exchange (loss) gain&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(4,224)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(141)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(5,427)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,795&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Gain on deconsolidation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(13,266)&lt;/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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(13,266)&lt;/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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Interest on long-term debt&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;166&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;288&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;358&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;603&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Interest and other income, net of bank charges&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;147&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(95)&lt;/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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(502)&lt;/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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(21)&lt;/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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Loss before income taxes in continuing operations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(5,092)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,231&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(10,214)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(11,659)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:5.2pt;font-weight:400;line-height:120%;position:relative;top:-2.8pt;vertical-align:baseline"&gt;1&lt;/span&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:8pt;font-weight:400;line-height:120%"&gt;Depreciation and amortization expenses used in computation for Segment EBITDA and reconciliation to consolidated loss before income taxes are included in cost of revenue and operating expenses on our statement of operations and comprehensive income (loss).&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&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&gt;&lt;td style="width:57.233%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.695%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.695%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.695%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.700%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Three months ended June 30,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Six months ended June 30,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Total additions to long-lived assets, excluding business combinations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;High-Pressure Controls &amp;amp; Systems&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;821&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;991&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;1,379&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;1,437&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Heavy-Duty OEM&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;569&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Corporate and unallocated&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;16&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Total consolidated&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;822&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;1,262&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;1,395&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2,006&#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&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-179" decimals="-3" id="f-971" unitRef="usd">2896000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-180" decimals="-3" id="f-972" unitRef="usd">9602000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-181" decimals="-3" id="f-973" unitRef="usd">12020000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-182" decimals="-3" id="f-974" unitRef="usd">24518000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-179" decimals="-3" id="f-975" unitRef="usd">2791000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-180" decimals="-3" id="f-976" unitRef="usd">8865000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-181" decimals="-3" id="f-977" unitRef="usd">13946000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-182" decimals="-3" id="f-978" unitRef="usd">25602000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:GrossProfit contextRef="c-179" decimals="-3" id="f-979" unitRef="usd">105000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="c-180" decimals="-3" id="f-980" unitRef="usd">737000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="c-181" decimals="-3" id="f-981" unitRef="usd">-1926000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="c-182" decimals="-3" id="f-982" unitRef="usd">-1084000</us-gaap:GrossProfit>
    <us-gaap:ResearchAndDevelopmentExpense contextRef="c-179" decimals="-3" id="f-983" unitRef="usd">1635000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense contextRef="c-180" decimals="-3" id="f-984" unitRef="usd">22000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense contextRef="c-181" decimals="-3" id="f-985" unitRef="usd">1888000</us-gaap:ResearchAndDevelopmentExpense>
    <wprt:ResearchAndDevelopmentExpenseAdjustmentForRounding contextRef="c-182" decimals="-3" id="f-986" unitRef="usd">3545000</wprt:ResearchAndDevelopmentExpenseAdjustmentForRounding>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-179" decimals="-3" id="f-987" unitRef="usd">386000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-180" decimals="-3" id="f-988" unitRef="usd">34000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-181" decimals="-3" id="f-989" unitRef="usd">2692000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-182" decimals="-3" id="f-990" unitRef="usd">3112000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:SellingAndMarketingExpense contextRef="c-179" decimals="-3" id="f-991" unitRef="usd">23000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense contextRef="c-180" decimals="-3" id="f-992" unitRef="usd">3000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense contextRef="c-181" decimals="-3" id="f-993" unitRef="usd">322000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense contextRef="c-182" decimals="-3" id="f-994" unitRef="usd">348000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:DepreciationAmortizationAndAccretionNet contextRef="c-179" decimals="-3" id="f-995" unitRef="usd">59000</us-gaap:DepreciationAmortizationAndAccretionNet>
    <us-gaap:DepreciationAmortizationAndAccretionNet contextRef="c-180" decimals="-3" id="f-996" unitRef="usd">0</us-gaap:DepreciationAmortizationAndAccretionNet>
    <us-gaap:DepreciationAmortizationAndAccretionNet contextRef="c-181" decimals="-3" id="f-997" unitRef="usd">860000</us-gaap:DepreciationAmortizationAndAccretionNet>
    <us-gaap:DepreciationAmortizationAndAccretionNet contextRef="c-182" decimals="-3" id="f-998" unitRef="usd">919000</us-gaap:DepreciationAmortizationAndAccretionNet>
    <us-gaap:OperatingExpenses contextRef="c-179" decimals="-3" id="f-999" unitRef="usd">2103000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses contextRef="c-180" decimals="-3" id="f-1000" unitRef="usd">59000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses contextRef="c-181" decimals="-3" id="f-1001" unitRef="usd">5762000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses contextRef="c-182" decimals="-3" id="f-1002" unitRef="usd">7924000</us-gaap:OperatingExpenses>
    <us-gaap:DepreciationDepletionAndAmortization contextRef="c-179" decimals="-3" id="f-1003" unitRef="usd">149000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization contextRef="c-180" decimals="-3" id="f-1004" unitRef="usd">0</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization contextRef="c-181" decimals="-3" id="f-1005" unitRef="usd">772000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization contextRef="c-182" decimals="-3" id="f-1006" unitRef="usd">921000</us-gaap:DepreciationDepletionAndAmortization>
    <wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization contextRef="c-179" decimals="-3" id="f-1007" unitRef="usd">-1849000</wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization>
    <wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization contextRef="c-180" decimals="-3" id="f-1008" unitRef="usd">678000</wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization>
    <wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization contextRef="c-181" decimals="-3" id="f-1009" unitRef="usd">-6916000</wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization>
    <wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization contextRef="c-182" decimals="-3" id="f-1010" unitRef="usd">-8087000</wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-183" decimals="-3" id="f-1011" unitRef="usd">3562000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-184" decimals="-3" id="f-1012" unitRef="usd">10547000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-185" decimals="-3" id="f-1013" unitRef="usd">4059000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-186" decimals="-3" id="f-1014" unitRef="usd">18168000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-183" decimals="-3" id="f-1015" unitRef="usd">2453000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-184" decimals="-3" id="f-1016" unitRef="usd">9297000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-185" decimals="-3" id="f-1017" unitRef="usd">3901000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-186" decimals="-3" id="f-1018" unitRef="usd">15651000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:GrossProfit contextRef="c-183" decimals="-3" id="f-1019" unitRef="usd">1109000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="c-184" decimals="-3" id="f-1020" unitRef="usd">1250000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="c-185" decimals="-3" id="f-1021" unitRef="usd">158000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="c-186" decimals="-3" id="f-1022" unitRef="usd">2517000</us-gaap:GrossProfit>
    <us-gaap:ResearchAndDevelopmentExpense contextRef="c-183" decimals="-3" id="f-1023" unitRef="usd">1408000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense contextRef="c-184" decimals="-3" id="f-1024" unitRef="usd">2052000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense contextRef="c-185" decimals="-3" id="f-1025" unitRef="usd">1121000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense contextRef="c-186" decimals="-3" id="f-1026" unitRef="usd">4581000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-183" decimals="-3" id="f-1027" unitRef="usd">303000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-184" decimals="-3" id="f-1028" unitRef="usd">1156000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-185" decimals="-3" id="f-1029" unitRef="usd">715000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-186" decimals="-3" id="f-1030" unitRef="usd">2174000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:SellingAndMarketingExpense contextRef="c-183" decimals="-3" id="f-1031" unitRef="usd">130000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense contextRef="c-184" decimals="-3" id="f-1032" unitRef="usd">352000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense contextRef="c-185" decimals="-3" id="f-1033" unitRef="usd">69000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense contextRef="c-186" decimals="-3" id="f-1034" unitRef="usd">551000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:DepreciationAmortizationAndAccretionNet contextRef="c-183" decimals="-3" id="f-1035" unitRef="usd">43000</us-gaap:DepreciationAmortizationAndAccretionNet>
    <us-gaap:DepreciationAmortizationAndAccretionNet contextRef="c-184" decimals="-3" id="f-1036" unitRef="usd">4000</us-gaap:DepreciationAmortizationAndAccretionNet>
    <us-gaap:DepreciationAmortizationAndAccretionNet contextRef="c-185" decimals="-3" id="f-1037" unitRef="usd">265000</us-gaap:DepreciationAmortizationAndAccretionNet>
    <us-gaap:DepreciationAmortizationAndAccretionNet contextRef="c-186" decimals="-3" id="f-1038" unitRef="usd">312000</us-gaap:DepreciationAmortizationAndAccretionNet>
    <us-gaap:OperatingExpenses contextRef="c-183" decimals="-3" id="f-1039" unitRef="usd">1884000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses contextRef="c-184" decimals="-3" id="f-1040" unitRef="usd">3564000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses contextRef="c-185" decimals="-3" id="f-1041" unitRef="usd">2170000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses contextRef="c-186" decimals="-3" id="f-1042" unitRef="usd">7618000</us-gaap:OperatingExpenses>
    <us-gaap:DepreciationDepletionAndAmortization contextRef="c-183" decimals="-3" id="f-1043" unitRef="usd">118000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization contextRef="c-184" decimals="-3" id="f-1044" unitRef="usd">0</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization contextRef="c-185" decimals="-3" id="f-1045" unitRef="usd">505000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization contextRef="c-186" decimals="-3" id="f-1046" unitRef="usd">623000</us-gaap:DepreciationDepletionAndAmortization>
    <wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization contextRef="c-183" decimals="-3" id="f-1047" unitRef="usd">-657000</wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization>
    <wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization contextRef="c-184" decimals="-3" id="f-1048" unitRef="usd">-2314000</wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization>
    <wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization contextRef="c-185" decimals="-3" id="f-1049" unitRef="usd">-1507000</wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization>
    <wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization contextRef="c-186" decimals="-3" id="f-1050" unitRef="usd">-4478000</wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-187" decimals="-3" id="f-1051" unitRef="usd">4786000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-188" decimals="-3" id="f-1052" unitRef="usd">15035000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-189" decimals="-3" id="f-1053" unitRef="usd">28819000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-190" decimals="-3" id="f-1054" unitRef="usd">48640000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-187" decimals="-3" id="f-1055" unitRef="usd">4168000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-188" decimals="-3" id="f-1056" unitRef="usd">13276000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-189" decimals="-3" id="f-1057" unitRef="usd">30230000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-190" decimals="-3" id="f-1058" unitRef="usd">47674000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:GrossProfit contextRef="c-187" decimals="-3" id="f-1059" unitRef="usd">618000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="c-188" decimals="-3" id="f-1060" unitRef="usd">1759000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="c-189" decimals="-3" id="f-1061" unitRef="usd">-1411000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="c-190" decimals="-3" id="f-1062" unitRef="usd">966000</us-gaap:GrossProfit>
    <us-gaap:ResearchAndDevelopmentExpense contextRef="c-187" decimals="-3" id="f-1063" unitRef="usd">2734000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense contextRef="c-188" decimals="-3" id="f-1064" unitRef="usd">133000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense contextRef="c-189" decimals="-3" id="f-1065" unitRef="usd">4890000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense contextRef="c-190" decimals="-3" id="f-1066" unitRef="usd">7757000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-187" decimals="-3" id="f-1067" unitRef="usd">705000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-188" decimals="-3" id="f-1068" unitRef="usd">99000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-189" decimals="-3" id="f-1069" unitRef="usd">5419000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-190" decimals="-3" id="f-1070" unitRef="usd">6223000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:SellingAndMarketingExpense contextRef="c-187" decimals="-3" id="f-1071" unitRef="usd">150000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense contextRef="c-188" decimals="-3" id="f-1072" unitRef="usd">23000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense contextRef="c-189" decimals="-3" id="f-1073" unitRef="usd">618000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense contextRef="c-190" decimals="-3" id="f-1074" unitRef="usd">791000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:DepreciationAmortizationAndAccretionNet contextRef="c-187" decimals="-3" id="f-1075" unitRef="usd">115000</us-gaap:DepreciationAmortizationAndAccretionNet>
    <us-gaap:DepreciationAmortizationAndAccretionNet contextRef="c-188" decimals="-3" id="f-1076" unitRef="usd">0</us-gaap:DepreciationAmortizationAndAccretionNet>
    <us-gaap:DepreciationAmortizationAndAccretionNet contextRef="c-189" decimals="-3" id="f-1077" unitRef="usd">1590000</us-gaap:DepreciationAmortizationAndAccretionNet>
    <us-gaap:DepreciationAmortizationAndAccretionNet contextRef="c-190" decimals="-3" id="f-1078" unitRef="usd">1705000</us-gaap:DepreciationAmortizationAndAccretionNet>
    <us-gaap:OperatingExpenses contextRef="c-187" decimals="-3" id="f-1079" unitRef="usd">3704000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses contextRef="c-188" decimals="-3" id="f-1080" unitRef="usd">255000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses contextRef="c-189" decimals="-3" id="f-1081" unitRef="usd">12517000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses contextRef="c-190" decimals="-3" id="f-1082" unitRef="usd">16476000</us-gaap:OperatingExpenses>
    <us-gaap:DepreciationDepletionAndAmortization contextRef="c-187" decimals="-3" id="f-1083" unitRef="usd">289000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization contextRef="c-188" decimals="-3" id="f-1084" unitRef="usd">0</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization contextRef="c-189" decimals="-3" id="f-1085" unitRef="usd">2392000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization contextRef="c-190" decimals="-3" id="f-1086" unitRef="usd">2681000</us-gaap:DepreciationDepletionAndAmortization>
    <wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization contextRef="c-187" decimals="-3" id="f-1087" unitRef="usd">-2797000</wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization>
    <wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization contextRef="c-188" decimals="-3" id="f-1088" unitRef="usd">1504000</wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization>
    <wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization contextRef="c-189" decimals="-3" id="f-1089" unitRef="usd">-11536000</wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization>
    <wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization contextRef="c-190" decimals="-3" id="f-1090" unitRef="usd">-12829000</wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-191" decimals="-3" id="f-1091" unitRef="usd">6049000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-192" decimals="-3" id="f-1092" unitRef="usd">22488000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-193" decimals="-3" id="f-1093" unitRef="usd">4059000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-194" decimals="-3" id="f-1094" unitRef="usd">32596000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-191" decimals="-3" id="f-1095" unitRef="usd">4413000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-192" decimals="-3" id="f-1096" unitRef="usd">22307000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-193" decimals="-3" id="f-1097" unitRef="usd">3901000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-194" decimals="-3" id="f-1098" unitRef="usd">30621000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:GrossProfit contextRef="c-191" decimals="-3" id="f-1099" unitRef="usd">1636000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="c-192" decimals="-3" id="f-1100" unitRef="usd">181000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="c-193" decimals="-3" id="f-1101" unitRef="usd">158000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="c-194" decimals="-3" id="f-1102" unitRef="usd">1975000</us-gaap:GrossProfit>
    <us-gaap:ResearchAndDevelopmentExpense contextRef="c-191" decimals="-3" id="f-1103" unitRef="usd">2951000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense contextRef="c-192" decimals="-3" id="f-1104" unitRef="usd">4858000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense contextRef="c-193" decimals="-3" id="f-1105" unitRef="usd">1121000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense contextRef="c-194" decimals="-3" id="f-1106" unitRef="usd">8930000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-191" decimals="-3" id="f-1107" unitRef="usd">496000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-192" decimals="-3" id="f-1108" unitRef="usd">2919000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-193" decimals="-3" id="f-1109" unitRef="usd">715000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-194" decimals="-3" id="f-1110" unitRef="usd">4130000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:SellingAndMarketingExpense contextRef="c-191" decimals="-3" id="f-1111" unitRef="usd">362000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense contextRef="c-192" decimals="-3" id="f-1112" unitRef="usd">849000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense contextRef="c-193" decimals="-3" id="f-1113" unitRef="usd">69000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense contextRef="c-194" decimals="-3" id="f-1114" unitRef="usd">1280000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:DepreciationAmortizationAndAccretionNet contextRef="c-191" decimals="-3" id="f-1115" unitRef="usd">85000</us-gaap:DepreciationAmortizationAndAccretionNet>
    <us-gaap:DepreciationAmortizationAndAccretionNet contextRef="c-192" decimals="-3" id="f-1116" unitRef="usd">121000</us-gaap:DepreciationAmortizationAndAccretionNet>
    <us-gaap:DepreciationAmortizationAndAccretionNet contextRef="c-193" decimals="-3" id="f-1117" unitRef="usd">265000</us-gaap:DepreciationAmortizationAndAccretionNet>
    <us-gaap:DepreciationAmortizationAndAccretionNet contextRef="c-194" decimals="-3" id="f-1118" unitRef="usd">471000</us-gaap:DepreciationAmortizationAndAccretionNet>
    <us-gaap:OperatingExpenses contextRef="c-191" decimals="-3" id="f-1119" unitRef="usd">3894000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses contextRef="c-192" decimals="-3" id="f-1120" unitRef="usd">8747000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses contextRef="c-193" decimals="-3" id="f-1121" unitRef="usd">2170000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses contextRef="c-194" decimals="-3" id="f-1122" unitRef="usd">14811000</us-gaap:OperatingExpenses>
    <us-gaap:DepreciationDepletionAndAmortization contextRef="c-191" decimals="-3" id="f-1123" unitRef="usd">226000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization contextRef="c-192" decimals="-3" id="f-1124" unitRef="usd">1391000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization contextRef="c-193" decimals="-3" id="f-1125" unitRef="usd">505000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization contextRef="c-194" decimals="-3" id="f-1126" unitRef="usd">2122000</us-gaap:DepreciationDepletionAndAmortization>
    <wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization contextRef="c-191" decimals="-3" id="f-1127" unitRef="usd">-2032000</wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization>
    <wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization contextRef="c-192" decimals="-3" id="f-1128" unitRef="usd">-7175000</wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization>
    <wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization contextRef="c-193" decimals="-3" id="f-1129" unitRef="usd">-1507000</wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization>
    <wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization contextRef="c-194" decimals="-3" id="f-1130" unitRef="usd">-10714000</wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-182" decimals="-3" id="f-1131" unitRef="usd">24518000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-195" decimals="-3" id="f-1132" unitRef="usd">-12020000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-196" decimals="-3" id="f-1133" unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-4" decimals="-3" id="f-1134" unitRef="usd">12498000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-182" decimals="-3" id="f-1135" unitRef="usd">25602000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-195" decimals="-3" id="f-1136" unitRef="usd">-13946000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-196" decimals="-3" id="f-1137" unitRef="usd">0</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-4" decimals="-3" id="f-1138" unitRef="usd">11656000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:GrossProfit contextRef="c-182" decimals="-3" id="f-1139" unitRef="usd">-1084000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="c-195" decimals="-3" id="f-1140" unitRef="usd">1926000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="c-196" decimals="-3" id="f-1141" unitRef="usd">0</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="c-4" decimals="-3" id="f-1142" unitRef="usd">842000</us-gaap:GrossProfit>
    <wprt:ResearchAndDevelopmentExpenseAdjustmentForRounding contextRef="c-182" decimals="-3" id="f-1143" unitRef="usd">3545000</wprt:ResearchAndDevelopmentExpenseAdjustmentForRounding>
    <us-gaap:ResearchAndDevelopmentExpense contextRef="c-195" decimals="-3" id="f-1144" unitRef="usd">-1888000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense contextRef="c-196" decimals="-3" id="f-1145" unitRef="usd">0</us-gaap:ResearchAndDevelopmentExpense>
    <wprt:ResearchAndDevelopmentExpenseAdjustmentForRounding contextRef="c-4" decimals="-3" id="f-1146" unitRef="usd">1657000</wprt:ResearchAndDevelopmentExpenseAdjustmentForRounding>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-182" decimals="-3" id="f-1147" unitRef="usd">3112000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-195" decimals="-3" id="f-1148" unitRef="usd">-2692000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-196" decimals="-3" id="f-1149" unitRef="usd">3686000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-4" decimals="-3" id="f-1150" unitRef="usd">4106000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:SellingAndMarketingExpense contextRef="c-182" decimals="-3" id="f-1151" unitRef="usd">348000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense contextRef="c-195" decimals="-3" id="f-1152" unitRef="usd">-322000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense contextRef="c-196" decimals="-3" id="f-1153" unitRef="usd">264000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense contextRef="c-4" decimals="-3" id="f-1154" unitRef="usd">290000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:DepreciationAmortizationAndAccretionNet contextRef="c-182" decimals="-3" id="f-1155" unitRef="usd">919000</us-gaap:DepreciationAmortizationAndAccretionNet>
    <us-gaap:DepreciationAmortizationAndAccretionNet contextRef="c-195" decimals="-3" id="f-1156" unitRef="usd">-860000</us-gaap:DepreciationAmortizationAndAccretionNet>
    <us-gaap:DepreciationAmortizationAndAccretionNet contextRef="c-196" decimals="-3" id="f-1157" unitRef="usd">47000</us-gaap:DepreciationAmortizationAndAccretionNet>
    <us-gaap:DepreciationAmortizationAndAccretionNet contextRef="c-4" decimals="-3" id="f-1158" unitRef="usd">106000</us-gaap:DepreciationAmortizationAndAccretionNet>
    <us-gaap:OperatingExpenses contextRef="c-182" decimals="-3" id="f-1159" unitRef="usd">7924000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses contextRef="c-195" decimals="-3" id="f-1160" unitRef="usd">-5762000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses contextRef="c-196" decimals="-3" id="f-1161" unitRef="usd">3997000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses contextRef="c-4" decimals="-3" id="f-1162" unitRef="usd">6159000</us-gaap:OperatingExpenses>
    <us-gaap:IncomeLossFromEquityMethodInvestments contextRef="c-182" decimals="-3" id="f-1163" unitRef="usd">0</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromEquityMethodInvestments contextRef="c-195" decimals="-3" id="f-1164" unitRef="usd">0</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromEquityMethodInvestments contextRef="c-196" decimals="-3" id="f-1165" unitRef="usd">-3686000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromEquityMethodInvestments contextRef="c-4" decimals="-3" id="f-1166" unitRef="usd">-3686000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-186" decimals="-3" id="f-1167" unitRef="usd">18168000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-197" decimals="-3" id="f-1168" unitRef="usd">-4059000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-198" decimals="-3" id="f-1169" unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-5" decimals="-3" id="f-1170" unitRef="usd">14109000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-186" decimals="-3" id="f-1171" unitRef="usd">15651000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-197" decimals="-3" id="f-1172" unitRef="usd">-3901000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-198" decimals="-3" id="f-1173" unitRef="usd">0</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-5" decimals="-3" id="f-1174" unitRef="usd">11750000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:GrossProfit contextRef="c-186" decimals="-3" id="f-1175" unitRef="usd">2517000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="c-197" decimals="-3" id="f-1176" unitRef="usd">-158000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="c-198" decimals="-3" id="f-1177" unitRef="usd">0</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="c-5" decimals="-3" id="f-1178" unitRef="usd">2359000</us-gaap:GrossProfit>
    <us-gaap:ResearchAndDevelopmentExpense contextRef="c-186" decimals="-3" id="f-1179" unitRef="usd">4581000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense contextRef="c-197" decimals="-3" id="f-1180" unitRef="usd">-1121000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense contextRef="c-198" decimals="-3" id="f-1181" unitRef="usd">0</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense contextRef="c-5" decimals="-3" id="f-1182" unitRef="usd">3460000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-186" decimals="-3" id="f-1183" unitRef="usd">2174000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-197" decimals="-3" id="f-1184" unitRef="usd">-715000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-198" decimals="-3" id="f-1185" unitRef="usd">4261000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-5" decimals="-3" id="f-1186" unitRef="usd">5720000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:SellingAndMarketingExpense contextRef="c-186" decimals="-3" id="f-1187" unitRef="usd">551000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense contextRef="c-197" decimals="-3" id="f-1188" unitRef="usd">-69000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense contextRef="c-198" decimals="-3" id="f-1189" unitRef="usd">480000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense contextRef="c-5" decimals="-3" id="f-1190" unitRef="usd">962000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:DepreciationAmortizationAndAccretionNet contextRef="c-186" decimals="-3" id="f-1191" unitRef="usd">312000</us-gaap:DepreciationAmortizationAndAccretionNet>
    <us-gaap:DepreciationAmortizationAndAccretionNet contextRef="c-197" decimals="-3" id="f-1192" unitRef="usd">-265000</us-gaap:DepreciationAmortizationAndAccretionNet>
    <us-gaap:DepreciationAmortizationAndAccretionNet contextRef="c-198" decimals="-3" id="f-1193" unitRef="usd">51000</us-gaap:DepreciationAmortizationAndAccretionNet>
    <us-gaap:DepreciationAmortizationAndAccretionNet contextRef="c-5" decimals="-3" id="f-1194" unitRef="usd">98000</us-gaap:DepreciationAmortizationAndAccretionNet>
    <us-gaap:OperatingExpenses contextRef="c-186" decimals="-3" id="f-1195" unitRef="usd">7618000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses contextRef="c-197" decimals="-3" id="f-1196" unitRef="usd">-2170000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses contextRef="c-198" decimals="-3" id="f-1197" unitRef="usd">4792000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses contextRef="c-5" decimals="-3" id="f-1198" unitRef="usd">10240000</us-gaap:OperatingExpenses>
    <us-gaap:IncomeLossFromEquityMethodInvestments contextRef="c-186" decimals="-3" id="f-1199" unitRef="usd">0</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromEquityMethodInvestments contextRef="c-197" decimals="-3" id="f-1200" unitRef="usd">0</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromEquityMethodInvestments contextRef="c-198" decimals="-3" id="f-1201" unitRef="usd">-1102000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromEquityMethodInvestments contextRef="c-5" decimals="-3" id="f-1202" unitRef="usd">-1102000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-190" decimals="-3" id="f-1203" unitRef="usd">48640000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-199" decimals="-3" id="f-1204" unitRef="usd">-28819000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-200" decimals="-3" id="f-1205" unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-1" decimals="-3" id="f-1206" unitRef="usd">19821000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-190" decimals="-3" id="f-1207" unitRef="usd">47674000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-199" decimals="-3" id="f-1208" unitRef="usd">-30230000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-200" decimals="-3" id="f-1209" unitRef="usd">0</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-1" decimals="-3" id="f-1210" unitRef="usd">17444000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:GrossProfit contextRef="c-190" decimals="-3" id="f-1211" unitRef="usd">966000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="c-199" decimals="-3" id="f-1212" unitRef="usd">1411000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="c-200" decimals="-3" id="f-1213" unitRef="usd">0</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="c-1" decimals="-3" id="f-1214" unitRef="usd">2377000</us-gaap:GrossProfit>
    <us-gaap:ResearchAndDevelopmentExpense contextRef="c-190" decimals="-3" id="f-1215" unitRef="usd">7757000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense contextRef="c-199" decimals="-3" id="f-1216" unitRef="usd">-4890000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense contextRef="c-200" decimals="-3" id="f-1217" unitRef="usd">0</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense contextRef="c-1" decimals="-3" id="f-1218" unitRef="usd">2867000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-190" decimals="-3" id="f-1219" unitRef="usd">6223000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-199" decimals="-3" id="f-1220" unitRef="usd">-5419000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-200" decimals="-3" id="f-1221" unitRef="usd">5974000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-1" decimals="-3" id="f-1222" unitRef="usd">6778000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:SellingAndMarketingExpense contextRef="c-190" decimals="-3" id="f-1223" unitRef="usd">791000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense contextRef="c-199" decimals="-3" id="f-1224" unitRef="usd">-618000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense contextRef="c-200" decimals="-3" id="f-1225" unitRef="usd">560000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense contextRef="c-1" decimals="-3" id="f-1226" unitRef="usd">733000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:DepreciationAmortizationAndAccretionNet contextRef="c-190" decimals="-3" id="f-1227" unitRef="usd">1705000</us-gaap:DepreciationAmortizationAndAccretionNet>
    <us-gaap:DepreciationAmortizationAndAccretionNet contextRef="c-199" decimals="-3" id="f-1228" unitRef="usd">-1590000</us-gaap:DepreciationAmortizationAndAccretionNet>
    <us-gaap:DepreciationAmortizationAndAccretionNet contextRef="c-200" decimals="-3" id="f-1229" unitRef="usd">99000</us-gaap:DepreciationAmortizationAndAccretionNet>
    <us-gaap:DepreciationAmortizationAndAccretionNet contextRef="c-1" decimals="-3" id="f-1230" unitRef="usd">214000</us-gaap:DepreciationAmortizationAndAccretionNet>
    <us-gaap:OperatingExpenses contextRef="c-190" decimals="-3" id="f-1231" unitRef="usd">16476000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses contextRef="c-199" decimals="-3" id="f-1232" unitRef="usd">-12517000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses contextRef="c-200" decimals="-3" id="f-1233" unitRef="usd">6633000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses contextRef="c-1" decimals="-3" id="f-1234" unitRef="usd">10592000</us-gaap:OperatingExpenses>
    <us-gaap:IncomeLossFromEquityMethodInvestments contextRef="c-190" decimals="-3" id="f-1235" unitRef="usd">0</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromEquityMethodInvestments contextRef="c-199" decimals="-3" id="f-1236" unitRef="usd">0</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromEquityMethodInvestments contextRef="c-200" decimals="-3" id="f-1237" unitRef="usd">-7570000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromEquityMethodInvestments contextRef="c-1" decimals="-3" id="f-1238" unitRef="usd">-7570000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-194" decimals="-3" id="f-1239" unitRef="usd">32596000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-201" decimals="-3" id="f-1240" unitRef="usd">-4059000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-202" decimals="-3" id="f-1241" unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-6" decimals="-3" id="f-1242" unitRef="usd">28537000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-194" decimals="-3" id="f-1243" unitRef="usd">30621000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-201" decimals="-3" id="f-1244" unitRef="usd">-3901000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-202" decimals="-3" id="f-1245" unitRef="usd">0</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-6" decimals="-3" id="f-1246" unitRef="usd">26720000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:GrossProfit contextRef="c-194" decimals="-3" id="f-1247" unitRef="usd">1975000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="c-201" decimals="-3" id="f-1248" unitRef="usd">-158000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="c-202" decimals="-3" id="f-1249" unitRef="usd">0</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="c-6" decimals="-3" id="f-1250" unitRef="usd">1817000</us-gaap:GrossProfit>
    <us-gaap:ResearchAndDevelopmentExpense contextRef="c-194" decimals="-3" id="f-1251" unitRef="usd">8930000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense contextRef="c-201" decimals="-3" id="f-1252" unitRef="usd">-1121000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense contextRef="c-202" decimals="-3" id="f-1253" unitRef="usd">0</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense contextRef="c-6" decimals="-3" id="f-1254" unitRef="usd">7809000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-194" decimals="-3" id="f-1255" unitRef="usd">4130000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-201" decimals="-3" id="f-1256" unitRef="usd">-715000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-202" decimals="-3" id="f-1257" unitRef="usd">9500000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-6" decimals="-3" id="f-1258" unitRef="usd">12915000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:SellingAndMarketingExpense contextRef="c-194" decimals="-3" id="f-1259" unitRef="usd">1280000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense contextRef="c-201" decimals="-3" id="f-1260" unitRef="usd">-69000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense contextRef="c-202" decimals="-3" id="f-1261" unitRef="usd">872000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense contextRef="c-6" decimals="-3" id="f-1262" unitRef="usd">2083000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:DepreciationAmortizationAndAccretionNet contextRef="c-194" decimals="-3" id="f-1263" unitRef="usd">471000</us-gaap:DepreciationAmortizationAndAccretionNet>
    <us-gaap:DepreciationAmortizationAndAccretionNet contextRef="c-201" decimals="-3" id="f-1264" unitRef="usd">-265000</us-gaap:DepreciationAmortizationAndAccretionNet>
    <us-gaap:DepreciationAmortizationAndAccretionNet contextRef="c-202" decimals="-3" id="f-1265" unitRef="usd">250000</us-gaap:DepreciationAmortizationAndAccretionNet>
    <us-gaap:DepreciationAmortizationAndAccretionNet contextRef="c-6" decimals="-3" id="f-1266" unitRef="usd">456000</us-gaap:DepreciationAmortizationAndAccretionNet>
    <us-gaap:OperatingExpenses contextRef="c-194" decimals="-3" id="f-1267" unitRef="usd">14811000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses contextRef="c-201" decimals="-3" id="f-1268" unitRef="usd">-2170000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses contextRef="c-202" decimals="-3" id="f-1269" unitRef="usd">10622000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses contextRef="c-6" decimals="-3" id="f-1270" unitRef="usd">23263000</us-gaap:OperatingExpenses>
    <us-gaap:IncomeLossFromEquityMethodInvestments contextRef="c-194" decimals="-3" id="f-1271" unitRef="usd">0</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromEquityMethodInvestments contextRef="c-201" decimals="-3" id="f-1272" unitRef="usd">0</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromEquityMethodInvestments contextRef="c-202" decimals="-3" id="f-1273" unitRef="usd">-1102000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromEquityMethodInvestments contextRef="c-6" decimals="-3" id="f-1274" unitRef="usd">-1102000</us-gaap:IncomeLossFromEquityMethodInvestments>
    <wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization contextRef="c-4" decimals="-3" id="f-1275" unitRef="usd">-8087000</wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization>
    <wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization contextRef="c-5" decimals="-3" id="f-1276" unitRef="usd">-4478000</wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization>
    <wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization contextRef="c-1" decimals="-3" id="f-1277" unitRef="usd">-12829000</wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization>
    <wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization contextRef="c-6" decimals="-3" id="f-1278" unitRef="usd">-10714000</wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization>
    <wprt:DepreciationDepletionAndAmortizationAdjusted contextRef="c-4" decimals="-3" id="f-1279" unitRef="usd">196000</wprt:DepreciationDepletionAndAmortizationAdjusted>
    <wprt:DepreciationDepletionAndAmortizationAdjusted contextRef="c-5" decimals="-3" id="f-1280" unitRef="usd">169000</wprt:DepreciationDepletionAndAmortizationAdjusted>
    <wprt:DepreciationDepletionAndAmortizationAdjusted contextRef="c-1" decimals="-3" id="f-1281" unitRef="usd">388000</wprt:DepreciationDepletionAndAmortizationAdjusted>
    <wprt:DepreciationDepletionAndAmortizationAdjusted contextRef="c-6" decimals="-3" id="f-1282" unitRef="usd">1867000</wprt:DepreciationDepletionAndAmortizationAdjusted>
    <wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization contextRef="c-181" decimals="-3" id="f-1283" unitRef="usd">-6916000</wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization>
    <wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization contextRef="c-185" decimals="-3" id="f-1284" unitRef="usd">-1507000</wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization>
    <wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization contextRef="c-189" decimals="-3" id="f-1285" unitRef="usd">-11536000</wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization>
    <wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization contextRef="c-193" decimals="-3" id="f-1286" unitRef="usd">-1507000</wprt:SegmentEarningsBeforeInterestTaxDepreciationAndAmortization>
    <us-gaap:EquityMethodInvestmentRealizedGainLossOnDisposal contextRef="c-4" decimals="-3" id="f-1287" unitRef="usd">-3686000</us-gaap:EquityMethodInvestmentRealizedGainLossOnDisposal>
    <us-gaap:EquityMethodInvestmentRealizedGainLossOnDisposal contextRef="c-5" decimals="-3" id="f-1288" unitRef="usd">-1102000</us-gaap:EquityMethodInvestmentRealizedGainLossOnDisposal>
    <us-gaap:EquityMethodInvestmentRealizedGainLossOnDisposal contextRef="c-1" decimals="-3" id="f-1289" unitRef="usd">-7570000</us-gaap:EquityMethodInvestmentRealizedGainLossOnDisposal>
    <us-gaap:EquityMethodInvestmentRealizedGainLossOnDisposal contextRef="c-6" decimals="-3" id="f-1290" unitRef="usd">-1102000</us-gaap:EquityMethodInvestmentRealizedGainLossOnDisposal>
    <us-gaap:OperatingCostsAndExpenses contextRef="c-196" decimals="-3" id="f-1291" unitRef="usd">3950000</us-gaap:OperatingCostsAndExpenses>
    <us-gaap:OperatingCostsAndExpenses contextRef="c-198" decimals="-3" id="f-1292" unitRef="usd">4741000</us-gaap:OperatingCostsAndExpenses>
    <us-gaap:OperatingCostsAndExpenses contextRef="c-200" decimals="-3" id="f-1293" unitRef="usd">6534000</us-gaap:OperatingCostsAndExpenses>
    <us-gaap:OperatingCostsAndExpenses contextRef="c-202" decimals="-3" id="f-1294" unitRef="usd">10372000</us-gaap:OperatingCostsAndExpenses>
    <us-gaap:ForeignCurrencyTransactionGainLossBeforeTax contextRef="c-4" decimals="-3" id="f-1295" unitRef="usd">4224000</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
    <us-gaap:ForeignCurrencyTransactionGainLossBeforeTax contextRef="c-5" decimals="-3" id="f-1296" unitRef="usd">141000</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
    <us-gaap:ForeignCurrencyTransactionGainLossBeforeTax contextRef="c-1" decimals="-3" id="f-1297" unitRef="usd">5427000</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
    <us-gaap:ForeignCurrencyTransactionGainLossBeforeTax contextRef="c-6" decimals="-3" id="f-1298" unitRef="usd">-1795000</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
    <us-gaap:DeconsolidationGainOrLossAmount contextRef="c-4" decimals="-3" id="f-1299" unitRef="usd">0</us-gaap:DeconsolidationGainOrLossAmount>
    <us-gaap:DeconsolidationGainOrLossAmount contextRef="c-5" decimals="-3" id="f-1300" unitRef="usd">13266000</us-gaap:DeconsolidationGainOrLossAmount>
    <us-gaap:DeconsolidationGainOrLossAmount contextRef="c-1" decimals="-3" id="f-1301" unitRef="usd">0</us-gaap:DeconsolidationGainOrLossAmount>
    <us-gaap:DeconsolidationGainOrLossAmount contextRef="c-6" decimals="-3" id="f-1302" unitRef="usd">13266000</us-gaap:DeconsolidationGainOrLossAmount>
    <us-gaap:InterestExpenseDebt contextRef="c-4" decimals="-3" id="f-1303" unitRef="usd">166000</us-gaap:InterestExpenseDebt>
    <us-gaap:InterestExpenseDebt contextRef="c-5" decimals="-3" id="f-1304" unitRef="usd">288000</us-gaap:InterestExpenseDebt>
    <us-gaap:InterestExpenseDebt contextRef="c-1" decimals="-3" id="f-1305" unitRef="usd">358000</us-gaap:InterestExpenseDebt>
    <us-gaap:InterestExpenseDebt contextRef="c-6" decimals="-3" id="f-1306" unitRef="usd">603000</us-gaap:InterestExpenseDebt>
    <us-gaap:InterestIncomeExpenseNonoperatingNet contextRef="c-4" decimals="-3" id="f-1307" unitRef="usd">-147000</us-gaap:InterestIncomeExpenseNonoperatingNet>
    <us-gaap:InterestIncomeExpenseNonoperatingNet contextRef="c-5" decimals="-3" id="f-1308" unitRef="usd">95000</us-gaap:InterestIncomeExpenseNonoperatingNet>
    <us-gaap:InterestIncomeExpenseNonoperatingNet contextRef="c-1" decimals="-3" id="f-1309" unitRef="usd">502000</us-gaap:InterestIncomeExpenseNonoperatingNet>
    <us-gaap:InterestIncomeExpenseNonoperatingNet contextRef="c-6" decimals="-3" id="f-1310" unitRef="usd">21000</us-gaap:InterestIncomeExpenseNonoperatingNet>
    <wprt:IncomeLossFromContinuingOperationsBeforeIncomeTaxesNoncontrollingInterestAdjustmentForRounding contextRef="c-4" decimals="-3" id="f-1311" unitRef="usd">-5092000</wprt:IncomeLossFromContinuingOperationsBeforeIncomeTaxesNoncontrollingInterestAdjustmentForRounding>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest contextRef="c-5" decimals="-3" id="f-1312" unitRef="usd">4231000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest contextRef="c-1" decimals="-3" id="f-1313" unitRef="usd">-10214000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest contextRef="c-6" decimals="-3" id="f-1314" unitRef="usd">-11659000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:SegmentExpenditureAdditionToLongLivedAssets contextRef="c-179" decimals="-3" id="f-1315" unitRef="usd">821000</us-gaap:SegmentExpenditureAdditionToLongLivedAssets>
    <us-gaap:SegmentExpenditureAdditionToLongLivedAssets contextRef="c-183" decimals="-3" id="f-1316" unitRef="usd">991000</us-gaap:SegmentExpenditureAdditionToLongLivedAssets>
    <us-gaap:SegmentExpenditureAdditionToLongLivedAssets contextRef="c-187" decimals="-3" id="f-1317" unitRef="usd">1379000</us-gaap:SegmentExpenditureAdditionToLongLivedAssets>
    <us-gaap:SegmentExpenditureAdditionToLongLivedAssets contextRef="c-191" decimals="-3" id="f-1318" unitRef="usd">1437000</us-gaap:SegmentExpenditureAdditionToLongLivedAssets>
    <us-gaap:SegmentExpenditureAdditionToLongLivedAssets contextRef="c-180" decimals="-3" id="f-1319" unitRef="usd">0</us-gaap:SegmentExpenditureAdditionToLongLivedAssets>
    <us-gaap:SegmentExpenditureAdditionToLongLivedAssets contextRef="c-184" decimals="-3" id="f-1320" unitRef="usd">271000</us-gaap:SegmentExpenditureAdditionToLongLivedAssets>
    <us-gaap:SegmentExpenditureAdditionToLongLivedAssets contextRef="c-188" decimals="-3" id="f-1321" unitRef="usd">0</us-gaap:SegmentExpenditureAdditionToLongLivedAssets>
    <us-gaap:SegmentExpenditureAdditionToLongLivedAssets contextRef="c-192" decimals="-3" id="f-1322" unitRef="usd">569000</us-gaap:SegmentExpenditureAdditionToLongLivedAssets>
    <us-gaap:SegmentExpenditureAdditionToLongLivedAssets contextRef="c-196" decimals="-3" id="f-1323" unitRef="usd">1000</us-gaap:SegmentExpenditureAdditionToLongLivedAssets>
    <us-gaap:SegmentExpenditureAdditionToLongLivedAssets contextRef="c-198" decimals="-3" id="f-1324" unitRef="usd">0</us-gaap:SegmentExpenditureAdditionToLongLivedAssets>
    <us-gaap:SegmentExpenditureAdditionToLongLivedAssets contextRef="c-200" decimals="-3" id="f-1325" unitRef="usd">16000</us-gaap:SegmentExpenditureAdditionToLongLivedAssets>
    <us-gaap:SegmentExpenditureAdditionToLongLivedAssets contextRef="c-202" decimals="-3" id="f-1326" unitRef="usd">0</us-gaap:SegmentExpenditureAdditionToLongLivedAssets>
    <us-gaap:SegmentExpenditureAdditionToLongLivedAssets contextRef="c-4" decimals="-3" id="f-1327" unitRef="usd">822000</us-gaap:SegmentExpenditureAdditionToLongLivedAssets>
    <us-gaap:SegmentExpenditureAdditionToLongLivedAssets contextRef="c-5" decimals="-3" id="f-1328" unitRef="usd">1262000</us-gaap:SegmentExpenditureAdditionToLongLivedAssets>
    <us-gaap:SegmentExpenditureAdditionToLongLivedAssets contextRef="c-1" decimals="-3" id="f-1329" unitRef="usd">1395000</us-gaap:SegmentExpenditureAdditionToLongLivedAssets>
    <us-gaap:SegmentExpenditureAdditionToLongLivedAssets contextRef="c-6" decimals="-3" id="f-1330" unitRef="usd">2006000</us-gaap:SegmentExpenditureAdditionToLongLivedAssets>
    <us-gaap:SegmentExpenditureAdditionToLongLivedAssets contextRef="c-181" decimals="-3" id="f-1331" unitRef="usd">322000</us-gaap:SegmentExpenditureAdditionToLongLivedAssets>
    <us-gaap:SegmentExpenditureAdditionToLongLivedAssets contextRef="c-189" decimals="-3" id="f-1332" unitRef="usd">1571000</us-gaap:SegmentExpenditureAdditionToLongLivedAssets>
    <us-gaap:SegmentExpenditureAdditionToLongLivedAssets contextRef="c-185" decimals="-3" id="f-1333" unitRef="usd">10000</us-gaap:SegmentExpenditureAdditionToLongLivedAssets>
    <us-gaap:SegmentExpenditureAdditionToLongLivedAssets contextRef="c-193" decimals="-3" id="f-1334" unitRef="usd">10000</us-gaap:SegmentExpenditureAdditionToLongLivedAssets>
    <wprt:ScheduleOfGeographicalRevenueInformationTableTextBlock contextRef="c-1" id="f-1335">&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Revenues are attributable to geographical regions based on the location of the Company&#x2019;s customers and are presented as a percentage of the Company's continuing revenues, as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&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&gt;&lt;td style="width:39.835%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.935%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.935%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.935%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.940%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="21" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;% of revenue&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Three months ended June 30,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Six months ended June 30,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Europe&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;79&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;85&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;79&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;87&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Asia&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;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;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;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&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;11&#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:'Montserrat',sans-serif;font-size:9.5pt;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&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;14&#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:'Montserrat',sans-serif;font-size:9.5pt;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&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:'Montserrat',sans-serif;font-size:9.5pt;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;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;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:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Americas&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;5&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;4&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;7&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;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;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</wprt:ScheduleOfGeographicalRevenueInformationTableTextBlock>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="c-203"
      decimals="2"
      id="f-1336"
      unitRef="number">0.79</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="c-204"
      decimals="2"
      id="f-1337"
      unitRef="number">0.85</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="c-205"
      decimals="2"
      id="f-1338"
      unitRef="number">0.79</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="c-206"
      decimals="2"
      id="f-1339"
      unitRef="number">0.87</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="c-207"
      decimals="2"
      id="f-1340"
      unitRef="number">0.16</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="c-208"
      decimals="2"
      id="f-1341"
      unitRef="number">0.11</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="c-209"
      decimals="2"
      id="f-1342"
      unitRef="number">0.14</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="c-210"
      decimals="2"
      id="f-1343"
      unitRef="number">0.10</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="c-211"
      decimals="2"
      id="f-1344"
      unitRef="number">0.05</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="c-212"
      decimals="2"
      id="f-1345"
      unitRef="number">0.04</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="c-213"
      decimals="2"
      id="f-1346"
      unitRef="number">0.07</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="c-214"
      decimals="2"
      id="f-1347"
      unitRef="number">0.03</us-gaap:ConcentrationRiskPercentage1>
    <wprt:ScheduleOfAllocationOfTotalAssetsTableTextBlock contextRef="c-1" id="f-1348">&lt;div style="margin-top:5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The measure of segment assets evaluated by the CODM are total assets as reported on the consolidated balance sheet. Total assets are allocated as follows&lt;/span&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:120%"&gt;:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:60.393%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.385%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:17.640%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.385%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:17.497%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Total assets by segment&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;span id="i8d100b17301b49a6a09a6daf522635dc_0-0-1-1-276174"&gt;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;June 30, 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;December 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Light-Duty (Held-for-sale)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;201,719&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;207,893&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;High-Pressure Controls &amp;amp; Systems&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;14,112&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;9,026&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Heavy-Duty OEM&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;12,429&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;9,138&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Corporate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;43,794&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;65,564&#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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;Total consolidated assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;272,054&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%"&gt;291,621&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</wprt:ScheduleOfAllocationOfTotalAssetsTableTextBlock>
    <us-gaap:Assets contextRef="c-215" decimals="-3" id="f-1349" unitRef="usd">201719000</us-gaap:Assets>
    <us-gaap:Assets contextRef="c-216" decimals="-3" id="f-1350" unitRef="usd">207893000</us-gaap:Assets>
    <us-gaap:Assets contextRef="c-217" decimals="-3" id="f-1351" unitRef="usd">14112000</us-gaap:Assets>
    <us-gaap:Assets contextRef="c-218" decimals="-3" id="f-1352" unitRef="usd">9026000</us-gaap:Assets>
    <us-gaap:Assets contextRef="c-219" decimals="-3" id="f-1353" unitRef="usd">12429000</us-gaap:Assets>
    <us-gaap:Assets contextRef="c-220" decimals="-3" id="f-1354" unitRef="usd">9138000</us-gaap:Assets>
    <us-gaap:Assets contextRef="c-221" decimals="-3" id="f-1355" unitRef="usd">43794000</us-gaap:Assets>
    <us-gaap:Assets contextRef="c-222" decimals="-3" id="f-1356" unitRef="usd">65564000</us-gaap:Assets>
    <us-gaap:Assets contextRef="c-2" decimals="-3" id="f-1357" unitRef="usd">272054000</us-gaap:Assets>
    <us-gaap:Assets contextRef="c-3" decimals="-3" id="f-1358" unitRef="usd">291621000</us-gaap:Assets>
    <us-gaap:FinancialInstrumentsDisclosureTextBlock contextRef="c-1" id="f-1359">&lt;div&gt;&lt;span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;17.          Financial instruments:&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:120%"&gt; &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="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Financial management risk&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company has exposure to liquidity risk, credit risk, foreign currency risk and interest rate risk.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;17.          Financial Instruments (continued):&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="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Liquidity risk &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="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Liquidity risk is the risk that the Company will not be able to meet its financial obligations as they are due.&#160;The Company has a history of operating losses and negative cash flows from operations. At June&#160;30, 2025, the Company had $6,064 of cash and cash equivalents, including $397 in restricted cash.&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="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following are the contractual maturities of financial obligations as at June&#160;30, 2025: &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:33.599%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.532%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.709%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.532%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:10.759%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.532%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.709%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.532%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.709%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.532%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.709%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.532%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.714%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Carrying&lt;br/&gt;amount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Contractual&lt;br/&gt;cash&#160;flows&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&amp;lt;&#160;1&#160;year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1-3&#160;years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4-5&#160;years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&amp;gt;5&#160;years&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Accounts payable and accrued liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;17,594&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;17,594&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;17,594&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Term loan facility (note 12)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,882&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,601&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,576&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,025&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Operating lease obligations (note 11)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,965&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,870&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;336&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,203&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,038&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;293&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;24,441&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;26,065&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;22,506&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,228&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,038&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;293&#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&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Montserrat SemiBold',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Fair value of financial instruments&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="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As at June&#160;30, 2025, cash and cash equivalents are measured at fair value on a recurring basis and are included in Level 1.&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="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The carrying amounts reported in the unaudited condensed consolidated interim balance sheets for accounts receivable, and accounts payable and accrued liabilities approximate their fair values due to the short-term period to maturity of these instruments.&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="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The long-term investments represent the Company's interests in Cespira and is accounted for using the equity method.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The carrying values reported in the condensed consolidated interim balance sheets for obligations under operating leases, which are based upon discounted cash flows, approximate their fair values.&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="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The carrying value of the term loan facility included in long-term debt (note 12) is carried at amortized cost, which approximate its fair value as at June&#160;30, 2025.&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="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company categorizes its fair value measurements for items measured at fair value on a recurring basis into three categories as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&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&gt;&lt;td style="width:6.356%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.549%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:81.795%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-left:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-left:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Level 1 &#x2013;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&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="border-left:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-left:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Montserrat',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="border-left:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-left:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Level 2 &#x2013;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Observable inputs other than Level 1 prices, such as quoted prices for similar assets or liabilities; quoted prices in markets that are not active; or other inputs that are observable or can be corroborated by observable market data for substantially the full term of the assets or liabilities.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-left:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-left:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Montserrat',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="border-bottom:1pt solid #ffffff;border-left:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #ffffff;border-left:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Level 3 &#x2013;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #ffffff;border-left:1pt solid #ffffff;border-right:1pt solid #ffffff;border-top:1pt solid #ffffff;padding:2px 1pt;text-align:justify;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Inputs for the asset or liability that are not based on observable market data (unobservable inputs).&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;When available, the Company uses quoted market prices to determine fair value and classify such items in Level 1.&#160; When necessary, Level 2 valuations are performed based on quoted market prices for similar instruments in active markets and/or model&#x2013;derived valuations with inputs that are observable in active markets.&#160; Level 3 valuations are undertaken in the absence of reliable Level 1 or Level 2 information.&lt;/span&gt;&lt;/div&gt;</us-gaap:FinancialInstrumentsDisclosureTextBlock>
    <us-gaap:CashCashEquivalentsAndShortTermInvestments contextRef="c-2" decimals="-3" id="f-1360" unitRef="usd">6064000</us-gaap:CashCashEquivalentsAndShortTermInvestments>
    <us-gaap:RestrictedCashAndCashEquivalents contextRef="c-2" decimals="-3" id="f-1361" unitRef="usd">397000</us-gaap:RestrictedCashAndCashEquivalents>
    <srt:ContractualObligationFiscalYearMaturityScheduleTableTextBlock contextRef="c-1" id="f-1362">&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following are the contractual maturities of financial obligations as at June&#160;30, 2025: &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:33.599%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.532%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.709%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.532%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:10.759%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.532%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.709%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.532%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.709%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.532%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.709%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.532%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.714%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Carrying&lt;br/&gt;amount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Contractual&lt;br/&gt;cash&#160;flows&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&amp;lt;&#160;1&#160;year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1-3&#160;years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4-5&#160;years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#252f6d;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#ffffff;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&amp;gt;5&#160;years&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Accounts payable and accrued liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;17,594&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;17,594&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;17,594&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Term loan facility (note 12)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,882&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,601&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,576&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,025&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;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&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Operating lease obligations (note 11)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,965&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,870&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;336&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,203&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,038&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#dbdbdb;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#dbdbdb;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;293&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#dbdbdb;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;24,441&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;26,065&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;22,506&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,228&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,038&#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&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&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:'Montserrat',sans-serif;font-size:9pt;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:'Montserrat',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;293&#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&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</srt:ContractualObligationFiscalYearMaturityScheduleTableTextBlock>
    <us-gaap:ContractualObligation contextRef="c-223" decimals="-3" id="f-1363" unitRef="usd">17594000</us-gaap:ContractualObligation>
    <wprt:ContractualObligationsRepaymentsTotal contextRef="c-224" decimals="-3" id="f-1364" unitRef="usd">17594000</wprt:ContractualObligationsRepaymentsTotal>
    <us-gaap:ContractualObligationDueInNextTwelveMonths contextRef="c-223" decimals="-3" id="f-1365" unitRef="usd">17594000</us-gaap:ContractualObligationDueInNextTwelveMonths>
    <us-gaap:ContractualObligationDueInSecondAndThirdYear contextRef="c-223" decimals="-3" id="f-1366" unitRef="usd">0</us-gaap:ContractualObligationDueInSecondAndThirdYear>
    <us-gaap:ContractualObligationDueInFourthAndFifthYear contextRef="c-223" decimals="-3" id="f-1367" unitRef="usd">0</us-gaap:ContractualObligationDueInFourthAndFifthYear>
    <us-gaap:ContractualObligationDueAfterFifthYear contextRef="c-223" decimals="-3" id="f-1368" unitRef="usd">0</us-gaap:ContractualObligationDueAfterFifthYear>
    <us-gaap:ContractualObligation contextRef="c-225" decimals="-3" id="f-1369" unitRef="usd">4882000</us-gaap:ContractualObligation>
    <wprt:ContractualObligationsRepaymentsTotal contextRef="c-226" decimals="-3" id="f-1370" unitRef="usd">5601000</wprt:ContractualObligationsRepaymentsTotal>
    <us-gaap:ContractualObligationDueInNextTwelveMonths contextRef="c-225" decimals="-3" id="f-1371" unitRef="usd">4576000</us-gaap:ContractualObligationDueInNextTwelveMonths>
    <us-gaap:ContractualObligationDueInSecondAndThirdYear contextRef="c-225" decimals="-3" id="f-1372" unitRef="usd">1025000</us-gaap:ContractualObligationDueInSecondAndThirdYear>
    <us-gaap:ContractualObligationDueInFourthAndFifthYear contextRef="c-225" decimals="-3" id="f-1373" unitRef="usd">0</us-gaap:ContractualObligationDueInFourthAndFifthYear>
    <us-gaap:ContractualObligationDueAfterFifthYear contextRef="c-225" decimals="-3" id="f-1374" unitRef="usd">0</us-gaap:ContractualObligationDueAfterFifthYear>
    <us-gaap:ContractualObligation contextRef="c-227" decimals="-3" id="f-1375" unitRef="usd">1965000</us-gaap:ContractualObligation>
    <wprt:ContractualObligationsRepaymentsTotal contextRef="c-228" decimals="-3" id="f-1376" unitRef="usd">2870000</wprt:ContractualObligationsRepaymentsTotal>
    <us-gaap:ContractualObligationDueInNextTwelveMonths contextRef="c-227" decimals="-3" id="f-1377" unitRef="usd">336000</us-gaap:ContractualObligationDueInNextTwelveMonths>
    <us-gaap:ContractualObligationDueInSecondAndThirdYear contextRef="c-227" decimals="-3" id="f-1378" unitRef="usd">1203000</us-gaap:ContractualObligationDueInSecondAndThirdYear>
    <us-gaap:ContractualObligationDueInFourthAndFifthYear contextRef="c-227" decimals="-3" id="f-1379" unitRef="usd">1038000</us-gaap:ContractualObligationDueInFourthAndFifthYear>
    <us-gaap:ContractualObligationDueAfterFifthYear contextRef="c-227" decimals="-3" id="f-1380" unitRef="usd">293000</us-gaap:ContractualObligationDueAfterFifthYear>
    <us-gaap:ContractualObligation contextRef="c-2" decimals="-3" id="f-1381" unitRef="usd">24441000</us-gaap:ContractualObligation>
    <wprt:ContractualObligationsRepaymentsTotal contextRef="c-1" decimals="-3" id="f-1382" unitRef="usd">26065000</wprt:ContractualObligationsRepaymentsTotal>
    <us-gaap:ContractualObligationDueInNextTwelveMonths contextRef="c-2" decimals="-3" id="f-1383" unitRef="usd">22506000</us-gaap:ContractualObligationDueInNextTwelveMonths>
    <us-gaap:ContractualObligationDueInSecondAndThirdYear contextRef="c-2" decimals="-3" id="f-1384" unitRef="usd">2228000</us-gaap:ContractualObligationDueInSecondAndThirdYear>
    <us-gaap:ContractualObligationDueInFourthAndFifthYear contextRef="c-2" decimals="-3" id="f-1385" unitRef="usd">1038000</us-gaap:ContractualObligationDueInFourthAndFifthYear>
    <us-gaap:ContractualObligationDueAfterFifthYear contextRef="c-2" decimals="-3" id="f-1386" unitRef="usd">293000</us-gaap:ContractualObligationDueAfterFifthYear>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
</SEC-DOCUMENT>
