<SEC-DOCUMENT>0001171843-25-002129.txt : 20250410
<SEC-HEADER>0001171843-25-002129.hdr.sgml : 20250410
<ACCEPTANCE-DATETIME>20250410080026
ACCESSION NUMBER:		0001171843-25-002129
CONFORMED SUBMISSION TYPE:	8-K
PUBLIC DOCUMENT COUNT:		15
CONFORMED PERIOD OF REPORT:	20250410
ITEM INFORMATION:		Results of Operations and Financial Condition
ITEM INFORMATION:		Financial Statements and Exhibits
FILED AS OF DATE:		20250410
DATE AS OF CHANGE:		20250410

FILER:

	COMPANY DATA:	
		COMPANY CONFORMED NAME:			NORTHERN TECHNOLOGIES INTERNATIONAL CORP
		CENTRAL INDEX KEY:			0000875582
		STANDARD INDUSTRIAL CLASSIFICATION:	COATING, ENGRAVING & ALLIED SERVICES [3470]
		ORGANIZATION NAME:           	04 Manufacturing
		EIN:				410857886
		STATE OF INCORPORATION:			DE
		FISCAL YEAR END:			0831

	FILING VALUES:
		FORM TYPE:		8-K
		SEC ACT:		1934 Act
		SEC FILE NUMBER:	001-11038
		FILM NUMBER:		25826528

	BUSINESS ADDRESS:	
		STREET 1:		4201 WOODLAND ROAD
		STREET 2:		PO BOX 69
		CITY:			CIRCLE PINES
		STATE:			MN
		ZIP:			55014
		BUSINESS PHONE:		(763) 225-6601

	MAIL ADDRESS:	
		STREET 1:		4201 WOODLAND ROAD
		STREET 2:		PO BOX 69
		CITY:			CIRCLE PINES
		STATE:			MN
		ZIP:			55014

	FORMER COMPANY:	
		FORMER CONFORMED NAME:	NORTHERN INSTRUMENTS CORP
		DATE OF NAME CHANGE:	19930328
</SEC-HEADER>
<DOCUMENT>
<TYPE>8-K
<SEQUENCE>1
<FILENAME>f8k_040825.htm
<DESCRIPTION>FORM 8-K
<TEXT>
<XBRL>
<?xml version='1.0' encoding='ASCII'?>
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:iso4217="http://www.xbrl.org/2003/iso4217" xmlns:ix="http://www.xbrl.org/2013/inlineXBRL" xmlns:ixt="http://www.xbrl.org/inlineXBRL/transformation/2015-02-26" xmlns:ixt-sec="http://www.sec.gov/inlineXBRL/transformation/2015-08-31" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:dei="http://xbrl.sec.gov/dei/2023" xmlns:ref="http://www.xbrl.org/2006/ref" xmlns:us-gaap="http://fasb.org/us-gaap/2023" xmlns:us-roles="http://fasb.org/us-roles/2021-01-31" xmlns:country="http://xbrl.sec.gov/country/2023" xmlns:srt="http://fasb.org/srt/2023"><head><title>Form 8-K</title></head><body style="font: 10pt Times New Roman, Times, Serif"><div style="display: none;"><ix:header><ix:hidden><ix:nonNumeric name="dei:EntityCentralIndexKey" contextRef="Form8K" id="ixv-142">0000875582</ix:nonNumeric> <ix:nonNumeric format="ixt:booleanfalse" name="dei:AmendmentFlag" contextRef="Form8K" id="ixv-143">False</ix:nonNumeric></ix:hidden><ix:references> <link:schemaRef xlink:href="gnw-20190101.xsd" xlink:type="simple"/> </ix:references> <ix:resources> <xbrli:context id="Form8K"> <xbrli:entity> <xbrli:identifier scheme="http://www.sec.gov/CIK">0000875582</xbrli:identifier> </xbrli:entity> <xbrli:period> <xbrli:startDate>2025-04-10</xbrli:startDate> <xbrli:endDate>2025-04-10</xbrli:endDate> </xbrli:period> </xbrli:context> <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="USDPShares"> <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> </ix:resources></ix:header></div><div style="margin-top: 3pt; margin-bottom: 12pt;"><div style="font-size: 1pt; border-top: Black 2pt solid; border-bottom: Black 1pt solid; width: 100%;">&#160;</div></div><p style="font-size: 14pt; font-weight: bold; text-align: center; margin-top: 6pt; margin-bottom: 0pt;">UNITED STATES</p><p style="font-size: 14pt; font-weight: bold; text-align: center; margin-top: 0pt; margin-bottom: 0pt;">SECURITIES AND EXCHANGE COMMISSION</p><p style="font-size: 14pt; font-weight: bold; text-align: center; margin-top: 0pt; margin-bottom: 6pt;">Washington, D.C. 20549</p><p style="text-align: center;">_________________</p><p style="font-size: 14pt; font-weight: bold; text-align: center; margin-top: 6pt; margin-bottom: 6pt;">FORM <ix:nonNumeric name="dei:DocumentType" contextRef="Form8K" id="ixv-163">8-K</ix:nonNumeric></p><p style="text-align: center;">_________________</p><p style="font-size: 12pt; font-weight: bold; text-align: center; margin-top: 6pt; margin-bottom: 6pt;">CURRENT REPORT</p><p style="font-size: 12pt; font-weight: bold; text-align: center; margin-top: 6pt; margin-bottom: 6pt;">Pursuant to Section 13 or 15(d)<br/>of the Securities Exchange Act of 1934</p><p style="font-size: 10pt; font-weight: bold; text-align: center; margin-top: 6pt; margin-bottom: 6pt;">Date of Report (Date of earliest event reported):&#160; <ix:nonNumeric format="ixt:datemonthdayyearen" name="dei:DocumentPeriodEndDate" contextRef="Form8K" id="ixv-164">April 10, 2025</ix:nonNumeric></p><p style="text-align: center;">_______________________________</p><p style="font-size: 12pt; text-align: center; margin-top: 6pt; margin-bottom: 0; font-weight: bold;"><ix:nonNumeric name="dei:EntityRegistrantName" contextRef="Form8K" id="ixv-165">NORTHERN TECHNOLOGIES INTERNATIONAL CORPORATION</ix:nonNumeric></p><p style="font-size: 10pt; text-align: center; margin-top: 0; margin-bottom: 6pt;">(Exact name of registrant as specified in its charter)</p><p style="text-align: center;">_______________________________</p><table style="width: 100%; margin-right: auto; margin-left: auto;" border="0" cellspacing="0" cellpadding="0"><tr style="vertical-align: top;"><td style="width: 33%; font-size: 10pt; font-weight: bold; text-align: center;"><ix:nonNumeric format="ixt-sec:stateprovnameen" name="dei:EntityIncorporationStateCountryCode" contextRef="Form8K" id="ixv-166">Delaware</ix:nonNumeric></td><td style="width: 34%; font-size: 10pt; text-align: center; font-weight: bold;"><ix:nonNumeric name="dei:EntityFileNumber" contextRef="Form8K" id="ixv-167">001-11038</ix:nonNumeric></td><td style="width: 33%; font-size: 10pt; font-weight: bold; text-align: center;"><ix:nonNumeric name="dei:EntityTaxIdentificationNumber" contextRef="Form8K" id="ixv-168">41-0857886</ix:nonNumeric></td></tr><tr style="vertical-align: top;"><td style="font-size: 10pt; text-align: center;">(State or Other Jurisdiction of Incorporation)</td><td style="font-size: 10pt; text-align: center;">(Commission File Number)</td><td style="font-size: 10pt; text-align: center;">(I.R.S. Employer Identification No.)</td></tr></table><!-- Postal Address Country=UNITED STATES  --><p style="font-size: 10pt; text-align: center; margin-top: 12pt; margin-bottom: 0pt; font-weight: bold;"><ix:nonNumeric name="dei:EntityAddressAddressLine1" contextRef="Form8K" id="ixv-32">4201 Woodland Road<br/>P.O. Box 69</ix:nonNumeric></p><p style="font-size: 10pt; text-align: center; margin-top: 0pt; margin-bottom: 0pt; font-weight: bold;"><ix:nonNumeric name="dei:EntityAddressCityOrTown" contextRef="Form8K" id="ixv-169">Circle Pines</ix:nonNumeric>, <ix:nonNumeric format="ixt-sec:stateprovnameen" name="dei:EntityAddressStateOrProvince" contextRef="Form8K" id="ixv-170">Minnesota</ix:nonNumeric> <ix:nonNumeric name="dei:EntityAddressPostalZipCode" contextRef="Form8K" id="ixv-171">55014</ix:nonNumeric></p><p style="font-size: 10pt; text-align: center; margin-top: 0pt; margin-bottom: 6pt;">(Address of Principal Executive Offices) (Zip Code)</p><!-- Phone Number --><p style="font-size: 10pt; font-weight: bold; text-align: center; margin-top: 0pt; margin-bottom: 0pt;">(<ix:nonNumeric name="dei:CityAreaCode" contextRef="Form8K" id="ixv-172">763</ix:nonNumeric>) <ix:nonNumeric name="dei:LocalPhoneNumber" contextRef="Form8K" id="ixv-173">225-6600</ix:nonNumeric></p><p style="font-size: 10pt; text-align: center; margin-top: 0pt; margin-bottom: 6pt;">(Registrant's telephone number, including area code)</p><!-- Former Name --><p style="font-size: 10pt; font-weight: bold; text-align: center; margin-top: 0pt; margin-bottom: 0pt;">Not Applicable</p><p style="font-size: 10pt; text-align: center; margin-top: 0pt; margin-bottom: 0pt;">(Former name or former address, if changed since last report)</p><p style="text-align: center;">_______________________________</p><!-- Checkboxes --><p style="font-size: 10pt; text-align: left; text-indent: 0; margin-top: 6pt; margin-bottom: 6pt;">Check the appropriate box below if the Form 8-K filing is intended to simultaneously satisfy the filing obligation of the registrant under any of the following provisions:</p><table style="width: 100%; margin-top: 6pt; margin-bottom: 6pt; font-size: 10pt;" cellspacing="0" cellpadding="0"><tr style="vertical-align: top;"><td style="width: 3%; text-align: center; vertical-align: middle;"><ix:nonNumeric format="ixt-sec:boolballotbox" name="dei:WrittenCommunications" contextRef="Form8K" id="ixv-174">&#9744;</ix:nonNumeric></td><td style="width: 97%; text-align: left;">Written communications pursuant to Rule 425 under the Securities Act (17 CFR 230.425)</td></tr><tr style="vertical-align: top;"><td style="width: 3%; text-align: center; vertical-align: middle;"><ix:nonNumeric format="ixt-sec:boolballotbox" name="dei:SolicitingMaterial" contextRef="Form8K" id="ixv-175">&#9744;</ix:nonNumeric></td><td style="width: 97%; text-align: left;">Soliciting material pursuant to Rule 14a-12 under the Exchange Act (17 CFR 240.14a-12)</td></tr><tr style="vertical-align: top;"><td style="width: 3%; text-align: center; vertical-align: middle;"><ix:nonNumeric format="ixt-sec:boolballotbox" name="dei:PreCommencementTenderOffer" contextRef="Form8K" id="ixv-176">&#9744;</ix:nonNumeric></td><td style="width: 97%; text-align: left;">Pre-commencement communications pursuant to Rule 14d-2(b) under the Exchange Act (17 CFR 240.14d-2(b))</td></tr><tr style="vertical-align: top;"><td style="width: 3%; text-align: center; vertical-align: middle;"><ix:nonNumeric format="ixt-sec:boolballotbox" name="dei:PreCommencementIssuerTenderOffer" contextRef="Form8K" id="ixv-177">&#9744;</ix:nonNumeric></td><td style="width: 97%; text-align: left;">Pre-commencement communications pursuant to Rule 13e-4(c) under the Exchange Act (17 CFR 240.13e-4(c))</td></tr></table><!-- Securities Table --><p style="font-size: 10pt; text-align: left; text-indent: 0; margin-top: 6pt; margin-bottom: 6pt;">Securities registered pursuant to Section 12(b) of the Act:</p><div><table border="0" cellspacing="0" cellpadding="0" style="width: 100%"><tr style="vertical-align: top"><td style="font-size: 10pt; text-align: center; margin-top: 6pt; margin-bottom: 6pt; width: 39%; border-bottom: Black 1pt solid">Title of each class</td><td style="font-size: 10pt; text-align: center; margin-top: 6pt; margin-bottom: 6pt; width: 23%; border-bottom: Black 1pt solid">Trading Symbol(s)</td><td style="font-size: 10pt; text-align: center; margin-top: 6pt; margin-bottom: 6pt; width: 38%; border-bottom: Black 1pt solid">Name of each exchange on which registered</td></tr><tr style="vertical-align: top"><td style="font-size: 10pt; text-align: center"><span><ix:nonNumeric contextRef="Form8K" name="dei:Security12bTitle" id="ixv-178">Common stock, par value $0.02 per share</ix:nonNumeric></span></td><td style="font-size: 10pt; text-align: center"><span><ix:nonNumeric contextRef="Form8K" name="dei:TradingSymbol" id="ixv-179">NTIC</ix:nonNumeric></span></td><td style="font-size: 10pt; text-align: center"><span><ix:nonNumeric contextRef="Form8K" format="ixt-sec:exchnameen" name="dei:SecurityExchangeName" id="ixv-180">Nasdaq Global Market</ix:nonNumeric></span></td></tr></table></div><!-- Emerging Growth Company --><p style="font-size: 10pt; text-align: left; text-indent: 0; margin-top: 6pt; margin-bottom: 6pt;">Indicate by check mark whether the registrant is an emerging growth company as defined in Rule 405 of the Securities Act of 1933 (&#167;230.405 of this chapter) or Rule 12b-2 of the Securities Exchange Act of 1934 (&#167;240.12b-2 of this chapter).</p><p style="font-size: 10pt; text-align: left; text-indent: 0; margin-top: 6pt; margin-bottom: 6pt;">Emerging growth company <ix:nonNumeric format="ixt-sec:boolballotbox" name="dei:EntityEmergingGrowthCompany" contextRef="Form8K" id="ixv-181">&#9744;</ix:nonNumeric></p><p style="font-size: 10pt; text-align: left; text-indent: 0; margin-top: 6pt; margin-bottom: 6pt;">If an emerging growth company, indicate by check mark if the registrant has elected not to use the extended transition period for complying with any new or revised financial accounting standards provided pursuant to Section 13(a) of the Exchange Act. &#9744;</p><div style="margin-top: 0pt; margin-bottom: 0pt; border-bottom: Black 4pt solid;">&#160;</div><div style="page-break-before: always; margin-top: 0pt; margin-bottom: 0pt;">&#160;</div><!-- 8-K Items --><div><div><div style="font-size: 10pt;"><strong>Item 2.02. Results of Operations and Financial Condition.</strong></div><div style="font-size: 10pt;"><p>&#160; &#160; &#160; On April 10, 2025, Northern Technologies International Corporation (&#8220;NTIC&#8221;) announced its consolidated financial results for the fiscal quarter ended February 28, 2025.&#160; A copy of the press release is attached as Exhibit 99.1 to this current report on Form 8-K and the information set forth therein is incorporated herein by reference and constitutes a part of this report.</p><p>&#160; &#160; &#160; The information contained in Item 2.02 of this report and Exhibit 99.1 to this report shall not be deemed to be &#8220;filed&#8221; for purposes of Section 18 of the Securities Exchange Act of 1934, as amended (the &#8220;Exchange Act&#8221;), and shall not be incorporated by reference into any filings made by NTIC under the Securities Act of 1933, as amended, or the Exchange Act, except as may be expressly set forth by specific reference in such filing.</p></div></div><div><div style="font-size: 10pt;"><strong>Item 9.01. Financial Statements and Exhibits.</strong></div><div style="font-size: 10pt;"><p>(d) <em>Exhibits</em>.</p><table style="font-size: 10pt;" border="0" cellspacing="0" cellpadding="0"><tr><td style="font-size: 10pt; font-weight: bold; text-decoration: underline; text-align: left;" valign="bottom">Exhibit No.</td><td style="font-size: 10pt; width: 20px;">&#160;</td><td style="font-size: 10pt; font-weight: bold; text-decoration: underline; text-align: left;" valign="bottom">Description</td></tr><tr><td style="font-size: 10pt;">&#160;</td><td style="font-size: 10pt; width: 20px;">&#160;</td><td style="font-size: 10pt;">&#160;</td></tr><tr><td style="font-size: 10pt; text-align: left;"><a href="exh_991.htm">99.1</a></td><td style="font-size: 10pt; width: 20px;">&#160;</td><td style="font-size: 10pt;"><a href="exh_991.htm">Press Release issued April 10, 2025 (furnished herewith)</a></td></tr><tr><td style="font-size: 10pt; text-align: left;">104</td><td style="font-size: 10pt; width: 20px;">&#160;</td><td style="font-size: 10pt;">The Cover Page from this Current Report on Form 8-K, Formatted in Inline XBRL (filed herewith)</td></tr></table></div></div></div><div style="margin-top: 0pt; margin-bottom: 0pt; border-bottom: Black 4pt solid;">&#160;</div><div style="page-break-before: always; margin-top: 0pt; margin-bottom: 0pt;">&#160;</div><!-- Signatures --><p style="font-size: 10pt; text-align: center; font-weight: bold;">SIGNATURE</p><p style="font-size: 10pt;">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 hereunto duly authorized.</p><table style="width: 100%;" border="0" cellspacing="0" cellpadding="0"><tr style="vertical-align: top;"><td>&#160;</td><td style="font-size: 10pt; font-weight: bold;" colspan="2">NORTHERN TECHNOLOGIES INTERNATIONAL CORPORATION</td></tr><tr style="vertical-align: top;"><td style="width: 49%;">&#160;</td><td style="width: 2%;">&#160;</td><td style="width: 49%;">&#160;</td></tr><tr style="vertical-align: top;"><td>&#160;</td><td>&#160;</td><td style="font-size: 10pt;"/></tr><tr style="vertical-align: top;"><td style="font-size: 10pt;">Date: April 10, 2025</td><td style="font-size: 10pt;">By:&#160;</td><td style="text-decoration: underline; font-size: 10pt;">/s/ Matthew C. Wolsfeld&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</td></tr><tr style="vertical-align: top;"><td>&#160;</td><td>&#160;</td><td style="font-size: 10pt;">Matthew C. Wolsfeld</td></tr><tr style="vertical-align: top;"><td>&#160;</td><td>&#160;</td><td style="font-size: 10pt;">Chief Financial Officer and Corporate Secretary</td></tr><tr style="vertical-align: top;"><td>&#160;</td><td>&#160;</td><td style="font-size: 10pt;"/></tr></table><!-- Exhibit Index --><div></div><!-- (763) 225-6600 Form 8-KApril 10, 2025 --><p>&#160;</p></body></html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-99.1
<SEQUENCE>2
<FILENAME>exh_991.htm
<DESCRIPTION>PRESS RELEASE
<TEXT>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html lang="en-US"><head><title>EdgarFiling</title><meta content="text/html; charset=windows-1252" ><meta name="GENERATOR" content="MSHTML 8.00.7601.18094" ></head><body bgcolor="#ffffff"><p style="text-align: right;"><strong>EXHIBIT 99.1</strong></p><p style="text-align: center;"><font style="font-size: 14pt;"><strong>Northern Technologies International Corporation Reports Financial Results for Second Quarter Fiscal 2025</strong></font></p><p style="text-align: center;"><strong></strong></p><p>
 <p align="left">MINNEAPOLIS, April  10, 2025  (GLOBE NEWSWIRE) -- Northern Technologies International Corporation (NASDAQ: NTIC), a leading developer of corrosion inhibiting products and services, as well as bio-based and biodegradable polymer resin compounds, today reported its financial results for the second quarter of fiscal 2025.</p>  <p>Second quarter fiscal 2025 financial and operating highlights include (with growth rates on a fiscal quarter year-over-year basis):</p>  <ul type="disc"><li>Consolidated net sales decreased 8.5% to $19,072,000</li><li>ZERUST&#174; industrial net sales decreased 3.7% to $12,562,000</li><li>ZERUST&#174; oil and gas net sales decreased 28.5% to $1,549,000</li><li>Natur-Tec&#174; product net sales decreased 11.8% to $4,960,000</li><li>NTIC China net sales increased 8.1% to $3,735,000</li><li>Gross profit, as a percent of net sales, decreased 440 basis points to 35.6%</li><li>Joint venture operating income decreased 31.8% to $1,691,000</li><li>Operating expenses increased 2.4% to $8,820,000</li><li>NTIC recognized $1,140,000 in other income due to the receipt of an Employee Retention Credit (ERC) payment</li><li>Net income attributable to NTIC was $434,000, compared to $1,701,000</li><li>Net income per diluted share attributable to NTIC was $0.04, compared to $0.17</li><li>Cash provided by operating activities was $3,199,000 for the six months ended February 28, 2025</li></ul>  <p>&#8220;NTIC&#8217;s second-quarter performance demonstrates the increasing intensity of the headwinds we are currently facing,<br > including recent changes in U.S. trade and economic policies, the seasonality of our industrial and oil and gas businesses, and the timing of certain Natur-Tec&#174; orders. Despite these current headwinds, we believe we are poised for a rebound in Natur-Tec&#174; and ZERUST&#174; oil and gas sales in the second half of the fiscal year,&#8221; said G. Patrick Lynch, President and CEO of NTIC.</p>  <p>&#8220;As we navigate this dynamic global environment, we are unwavering in our commitment to delivering long-term value. Our disciplined approach to managing cash, including temporarily adjusting our quarterly dividend to $0.01 per share effective with our next quarterly dividend, and prioritizing debt reduction are intended to position us to seize future growth opportunities in our oil and gas and compostable plastics businesses. We believe that our strategic growth priorities and financial discipline will drive sustainable growth and long-term shareholder value,&#8221; concluded Mr. Lynch.</p>  <p>NTIC&#8217;s consolidated net sales decreased 8.5% to $19,072,000 during the three months ended February 28, 2025, compared to $20,843,000 for the three months ended February 29, 2024. This decrease was primarily a result of lower sales within the Company&#8217;s ZERUST&#174; oil and gas, Natur-Tec&#174;, and ZERUST&#174; industrial product categories. For the first half of fiscal 2025, consolidated net sales decreased 1.5% to $40,410,000, compared to $41,024,000 for the same period last year.</p>  <p>The following tables set forth NTIC&#8217;s net sales by product category for the three and six months ended February 28, 2025 and February 29, 2024, by segment:</p> <table style="width:100%; border-collapse:collapse !important;;border-collapse: collapse; "><tr><td style="vertical-align: bottom ; ">&#160;</td><td colspan="14" style="border-bottom: solid black 1pt ; text-align: center ;  vertical-align: middle; vertical-align: bottom ; "><strong>Three Months Ended</strong></td></tr><tr><td style="vertical-align: bottom ; ">&#160;</td><td colspan="2" style="border-bottom: solid black 1pt ; text-align: center ;  vertical-align: middle; vertical-align: bottom ; "><strong>February 28,</strong><br ><strong>2025</strong><strong><br ></strong></td><td style="text-align: center ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="2" style="border-bottom: solid black 1pt ; text-align: center ;  vertical-align: middle; vertical-align: bottom ; "><strong>% of Net <br >Sales</strong><strong><br ></strong></td><td style="text-align: center ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="2" style="border-bottom: solid black 1pt ; text-align: center ;  vertical-align: middle; vertical-align: bottom ; "><strong>February 29,</strong><br ><strong>2024</strong><strong><br ></strong></td><td style="text-align: center ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="2" style="border-bottom: solid black 1pt ; text-align: center ;  vertical-align: middle; vertical-align: bottom ; "><strong>% of Net <br >Sales</strong><strong><br ></strong></td><td style="text-align: center ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="2" style="border-bottom: solid black 1pt ; text-align: center ;  vertical-align: middle; vertical-align: bottom ; "><strong>% <br >Change</strong><strong><br ></strong></td></tr><tr><td style="max-width:36%; width:36%; min-width:36%;;vertical-align: bottom ; ">ZERUST<sup>&#174;</sup> industrial net sales</td><td style="max-width:1%; width:1%; min-width:1%;;padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="max-width:11%; width:11%; min-width:11%;;padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">12,562,853</td><td style="max-width:1%; width:1%; min-width:1%;;padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="max-width:11%; width:11%; min-width:11%;;padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">65.9</td><td style="max-width:1%; width:1%; min-width:1%;;padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">%</td><td style="max-width:1%; width:1%; min-width:1%;;padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="max-width:1%; width:1%; min-width:1%;;padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="max-width:11%; width:11%; min-width:11%;;padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">13,050,767</td><td style="max-width:1%; width:1%; min-width:1%;;padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="max-width:11%; width:11%; min-width:11%;;padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">62.6</td><td style="max-width:1%; width:1%; min-width:1%;;padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">%</td><td style="max-width:1%; width:1%; min-width:1%;;padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="max-width:11%; width:11%; min-width:11%;;padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">(3.7</td><td style="max-width:1%; width:1%; min-width:1%;;padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">%)</td></tr><tr><td style="vertical-align: bottom ; ">ZERUST<sup>&#174;</sup> oil &amp; gas net sales</td><td style="padding-right: 0 ; border-bottom: solid black 1pt ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; border-bottom: solid black 1pt ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">1,549,164</td><td style="padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; border-bottom: solid black 1pt ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">8.1</td><td style="padding-left: 0 ; border-bottom: solid black 1pt ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">%</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; border-bottom: solid black 1pt ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; border-bottom: solid black 1pt ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">2,167,328</td><td style="padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; border-bottom: solid black 1pt ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">10.4</td><td style="padding-left: 0 ; border-bottom: solid black 1pt ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">%</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; border-bottom: solid black 1pt ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">(28.5</td><td style="padding-left: 0 ; border-bottom: solid black 1pt ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">%)</td></tr><tr><td style="vertical-align: middle;   text-align: left;   padding-left: 30.0px; vertical-align: bottom ; ">Total ZERUST<sup>&#174;</sup> net sales</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">14,112,017</td><td style="padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">74.0</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">%</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">15,218,095</td><td style="padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">73.0</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">%</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">(7.3</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">%)</td></tr><tr><td style="vertical-align: bottom ; ">Total Natur-Tec<sup>&#174;</sup> net sales</td><td style="padding-right: 0 ; border-bottom: solid black 1pt ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; border-bottom: solid black 1pt ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">4,960,049</td><td style="padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; border-bottom: solid black 1pt ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">26.0</td><td style="padding-left: 0 ; border-bottom: solid black 1pt ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">%</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; border-bottom: solid black 1pt ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; border-bottom: solid black 1pt ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">5,624,443</td><td style="padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; border-bottom: solid black 1pt ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">27.0</td><td style="padding-left: 0 ; border-bottom: solid black 1pt ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">%</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; border-bottom: solid black 1pt ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">(11.8</td><td style="padding-left: 0 ; border-bottom: solid black 1pt ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">%)</td></tr><tr><td style="vertical-align: middle;   text-align: left;   padding-left: 30.0px; vertical-align: bottom ; ">Total net sales</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">19,072,066</td><td style="padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">100.0</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">%</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">20,842,538</td><td style="padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">100.0</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">%</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">(8.5</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">%)</td></tr></table> <p><br ></p> <table style="width:100%; border-collapse:collapse !important;;border-collapse: collapse; "><tr><td style="vertical-align: bottom ; ">&#160;</td><td colspan="14" style="border-bottom: solid black 1pt ; text-align: center ;  vertical-align: middle; vertical-align: bottom ; "><strong>Six Months Ended</strong></td></tr><tr><td style="vertical-align: bottom ; ">&#160;</td><td colspan="2" style="border-bottom: solid black 1pt ; text-align: center ;  vertical-align: middle; vertical-align: bottom ; "><strong>February 28,</strong><br ><strong>2025</strong><strong><br ></strong></td><td style="text-align: center ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="2" style="border-bottom: solid black 1pt ; text-align: center ;  vertical-align: middle; vertical-align: bottom ; "><strong>% of Net <br >Sales</strong><strong><br ></strong></td><td style="text-align: center ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="2" style="border-bottom: solid black 1pt ; text-align: center ;  vertical-align: middle; vertical-align: bottom ; "><strong>February 29,</strong><br ><strong>2024</strong><strong><br ></strong></td><td style="text-align: center ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="2" style="border-bottom: solid black 1pt ; text-align: center ;  vertical-align: middle; vertical-align: bottom ; "><strong>% of Net <br >Sales</strong><strong><br ></strong></td><td style="text-align: center ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="2" style="border-bottom: solid black 1pt ; text-align: center ;  vertical-align: middle; vertical-align: bottom ; "><strong>% <br >Change</strong></td></tr><tr><td style="max-width:36%; width:36%; min-width:36%;;vertical-align: bottom ; ">ZERUST<sup>&#174;</sup> industrial net sales</td><td style="max-width:1%; width:1%; min-width:1%;;padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="max-width:11%; width:11%; min-width:11%;;padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">26,525,105</td><td style="max-width:1%; width:1%; min-width:1%;;padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="max-width:11%; width:11%; min-width:11%;;padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">65.6</td><td style="max-width:1%; width:1%; min-width:1%;;padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">%</td><td style="max-width:1%; width:1%; min-width:1%;;padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="max-width:1%; width:1%; min-width:1%;;padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="max-width:11%; width:11%; min-width:11%;;padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">26,954,198</td><td style="max-width:1%; width:1%; min-width:1%;;padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="max-width:11%; width:11%; min-width:11%;;padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">65.7</td><td style="max-width:1%; width:1%; min-width:1%;;padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">%</td><td style="max-width:1%; width:1%; min-width:1%;;padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="max-width:11%; width:11%; min-width:11%;;padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">(1.6</td><td style="max-width:1%; width:1%; min-width:1%;;padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">%)</td></tr><tr><td style="vertical-align: bottom ; ">ZERUST<sup>&#174;</sup> oil &amp; gas net sales</td><td style="padding-right: 0 ; border-bottom: solid black 1pt ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; border-bottom: solid black 1pt ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">3,062,715</td><td style="padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; border-bottom: solid black 1pt ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">7.6</td><td style="padding-left: 0 ; border-bottom: solid black 1pt ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">%</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; border-bottom: solid black 1pt ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; border-bottom: solid black 1pt ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">3,669,642</td><td style="padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; border-bottom: solid black 1pt ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">8.9</td><td style="padding-left: 0 ; border-bottom: solid black 1pt ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">%</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; border-bottom: solid black 1pt ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">(16.5</td><td style="padding-left: 0 ; border-bottom: solid black 1pt ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">%)</td></tr><tr><td style="vertical-align: middle;   text-align: left;   padding-left: 30.0px; vertical-align: bottom ; ">Total ZERUST<sup>&#174;</sup> net sales</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">29,587,820</td><td style="padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">73.2</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">%</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">30,623,840</td><td style="padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">74.6</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">%</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">(3.4</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">%)</td></tr><tr><td style="vertical-align: bottom ; ">Total Natur-Tec<sup>&#174;</sup> net sales</td><td style="padding-right: 0 ; border-bottom: solid black 1pt ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; border-bottom: solid black 1pt ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">10,822,639</td><td style="padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; border-bottom: solid black 1pt ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">26.8</td><td style="padding-left: 0 ; border-bottom: solid black 1pt ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">%</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; border-bottom: solid black 1pt ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; border-bottom: solid black 1pt ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">10,400,373</td><td style="padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; border-bottom: solid black 1pt ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">25.4</td><td style="padding-left: 0 ; border-bottom: solid black 1pt ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">%</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; border-bottom: solid black 1pt ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">4.1</td><td style="padding-left: 0 ; border-bottom: solid black 1pt ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">%</td></tr><tr><td style="vertical-align: middle;   text-align: left;   padding-left: 30.0px; vertical-align: bottom ; ">Total net sales</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">40,410,459</td><td style="padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">100.0</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">%</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">41,024,213</td><td style="padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">100.0</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">%</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">(1.5</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">%)</td></tr><tr><td colspan="15" style="vertical-align: middle;   text-align: left;   padding-left: 30.0px; vertical-align: bottom ; ">&#160;</td></tr></table> <p>NTIC&#8217;s joint venture operating income decreased 31.8% to $1,691,000 during the three months ended February 28, 2025, compared to joint venture operating income of $2,481,000 during the three months ended February 29, 2024. The $790,000 decrease in joint venture operating income was primarily due to a decrease in equity in income from joint ventures and fees for services provided to joint ventures, both of which were driven primarily by lower sales at most of NTIC&#8217;s joint ventures. Net sales of NTIC&#8217;s joint ventures, which are not consolidated with NTIC&#8217;s financial results, decreased 15.7% to $19,800,000 during the three months ended February 28, 2025, compared to $23,480,000 for the three months ended February 29, 2024. Year-to-date, NTIC&#8217;s joint venture operating income was $4,105,000, compared to joint venture operating income of $4,832,000 during the six months ended February 29, 2024. Net sales of NTIC&#8217;s joint ventures were $43,637,000 for the six months ended February 28, 2025, compared to $47,041,000 for the six months ended February 29, 2024.</p>  <p>Operating expenses, as a percent of net sales, for the second quarter of fiscal 2025 were 46.2%, compared to 41.3% for the same period last fiscal year. Year-to-date, operating expenses, as a percent of net sales, were 45.3%, compared to 41.3% for the same period last fiscal year. Higher operating expenses for the three and six months ended February 28, 2025 were primarily due to strategic investments in ZERUST&#174; oil and gas sales infrastructure and increased personnel expenses, including new hires and benefits, and higher travel and professional fees.</p>  <p>NTIC recognized $1,140,000 in other income during the three and six months ended February 28, 2025 due to the receipt of a cash ERC payment. No other income was recognized during the prior year periods.</p>  <p>Net income attributable to NTIC for the second quarter of fiscal 2025 was $434,000, or $0.04 per diluted share, compared to net income of $1,701,000, or $0.17 per diluted share, for the same period last fiscal year. Year-to-date, net income attributable to NTIC was $995,000, or $0.10 per diluted share, compared to net income of $2,597,000, or $0.27 per diluted share, for the same period last fiscal year.</p>  <p>NTIC&#8217;s non-GAAP adjusted net income, as set forth in the GAAP reconciliation at the end of this release, was a loss of $300,000, or $(0.03) per diluted share, for the second quarter of fiscal 2025, compared to net income of $1,807,000, or $0.19 per diluted share, for the same quarter last fiscal year. Year-to-date, non-GAAP adjusted net income was $367,000, or $0.04 per diluted share, compared to net income of $2,808,000, or $0.29 per diluted share, for the same period last fiscal year.</p>  <p>NTIC had working capital of $21,416,000 as of February 28, 2025, including $5,091,000 in cash and cash equivalents and an outstanding revolving line of credit and term loan balance of $8,101,000, compared to $23,682,000 of working capital as of August 31, 2024, including $4,952,000 in cash and cash equivalents and an outstanding revolving line of credit and term loan balance of $7,112,000.</p>  <p>At February 28, 2025, the Company had $25,041,000 of investments in joint ventures, of which $13,025,000, or 52.0%, is cash, with the remaining balance mostly made up of other working capital.</p>  <p><strong>Conference Call and Webcast</strong></p>  <p>NTIC will host a conference call today at 8:00 a.m. Central Time to review its results of operations for the second quarter of fiscal year 2025 and its outlook, followed by a question-and-answer session. The conference call will be available to interested parties through a webcast. To join the live call and ask a question, a participant must register using the URL below.</p>  <p>https://register-conf.media-server.com/register/BI0367281b6c4e4339964df49370573727</p>  <p>Once registered, the participant will receive a dial-in number and unique PIN number to access the call.</p>  <p>The audio-only webcast can be accessed at the following link: https://edge.media-server.com/mmc/p/2p6jpccv <br >A link to the webcast is also available on the Investor Relations section of NTIC&#8217;s webpage. Participants are advised to go to the website at least 15 minutes early to register, download and install any necessary audio software. For those unable to participate in the live webcast, a replay of the webcast will be archived and accessible for approximately one year on the Investor Relations section of NTIC&#8217;s webpage.</p>  <p><strong>About Northern Technologies International Corporation</strong></p>  <p>Northern Technologies International Corporation develops and markets proprietary, environmentally beneficial products and services in over 65 countries either directly or via a network of subsidiaries, joint ventures, independent distributors and agents. NTIC&#8217;s primary business is corrosion prevention marketed mainly under the ZERUST&#174; brand. NTIC has been selling its proprietary ZERUST&#174; rust and corrosion inhibiting products and services to the automotive, electronics, electrical, mechanical, military and retail consumer markets for over 50 years and more recently has also targeted and expanded into the oil and gas industry. NTIC offers worldwide on-site technical consulting for rust and corrosion prevention issues. NTIC&#8217;s technical service consultants work directly with the end users of NTIC&#8217;s products to analyze their specific needs and develop systems to meet their technical requirements. NTIC also markets and sells a portfolio of bio-based and biodegradable polymer resin compounds and finished products marketed under the Natur-Tec&#174; brand.</p>  <p><strong>Forward-Looking Statements</strong></p>  <p align="left"><em>Statements contained in this release that are not historical information are forward-looking statements within the meaning of the Private Securities Litigation Reform Act of 1995. Such statements include NTIC&#8217;s beliefs that it is poised for a strong rebound in Natur-Tec&#174; and ZERUST&#174; oil and gas sales in the second half of the fiscal year, that its disciplined approach to managing cash, including temporarily adjusting its quarterly dividend to $0.01 per share effective with its next quarterly dividend, and prioritizing debt reduction will position NTIC to seize future growth opportunities in its oil and gas and compostable plastics businesses and that its strategic growth priorities and financial discipline will drive sustainable growth and long-term shareholder value, and other statements that can be identified by words such as &#8220;believes,&#8221; &#8220;continues,&#8221; &#8220;expects,&#8221; &#8220;anticipates,&#8221; &#8220;intends,&#8221; &#8220;potential,&#8221; &#8220;outlook,&#8221; &#8220;will,&#8221; &#8220;may,&#8221; &#8220;would,&#8221; &#8220;should,&#8221; &#8220;guidance&#8221; or words of similar meaning, and the use of future dates. Such forward-looking statements are based upon the current beliefs and expectations of NTIC&#8217;s management and are inherently subject to risks and uncertainties that could cause actual results to differ materially from those projected or implied. Such potential risks and uncertainties include, but are not limited to, in no particular order: the health of the U.S. and worldwide economies, including in particular the U.S. automotive industry and its evolution towards electric vehicles; the effect of economic uncertainty, recessionary indicators, inflation, increased interest rates and turmoil in the global credit, financial and banking markets or perception thereof; effect of supply chain disruptions; dependence on joint ventures, relationships with joint venture partners and their success, including fees and dividend distributions; risks associated with international operations, including NTIC China, exposure to exchange rate fluctuations, tariffs and trade disputes; effect of economic slowdown and political unrest, including the wars between Russia and Ukraine and Israel and Hamas; the level of growth in NTIC&#8217;s markets; NTIC&#8217;s investments in research and development efforts; acceptance of existing and new products; timing of purchase orders under supply contracts; variability in sales to oil and gas customers and effect on quarterly financial results; increased competition; costs and effects of complying with changes in tax, fiscal, government and other regulatory policies, and rules relating to environmental, health and safety matters; and NTIC&#8217;s reliance on its intellectual property rights and the absence of infringement of the intellectual property rights of others. More detailed information on these and additional factors which could affect NTIC&#8217;s operating and financial results is described in NTIC&#8217;s filings with the Securities and Exchange Commission, including its annual report on Form 10-K for the fiscal year ended August 31, 2024 and subsequent quarterly reports on Form 10-Q. NTIC urges all interested parties to read these reports to gain a better understanding of the many business and other risks that it faces. Additionally, NTIC undertakes no obligation to publicly release the results of any revisions to these forward-looking statements, which may be made to reflect events or circumstances occurring after the date hereof or to reflect the occurrence of unanticipated events.</em></p>  <p align="justify"><strong>Use of Non-GAAP Financial Measures</strong></p>  <p align="left"><em>In addition to the financial measures prepared in accordance with U.S. generally accepted accounting principles (GAAP), this release contains non-GAAP financial measures, including adjusted net income attributable to NTIC and adjusted net income attributable to NTIC per diluted share. NTIC&#8217;s reasons for use of these measures, reconciliations of these non-GAAP financial measures to the most directly comparable GAAP measures and other information are included at the end of this release. Non-GAAP financial measures have limitations as analytical tools and should not be considered in isolation or as a substitute for NTIC&#8217;s financial results prepared in accordance with GAAP.</em></p>  <p align="left"><em><br ></em></p>  <p align="left"><strong>NORTHERN TECHNOLOGIES INTERNATIONAL CORPORATION AND SUBSIDIARIES </strong><br ><strong>CONSOLIDATED BALANCE SHEETS AS OF FEBRUARY 28, 2025</strong><strong> (UNAUDITED) </strong><br ><strong>AND AUGUST 31, 2024 (AUDITED)</strong></p> <table style="width:100%; border-collapse:collapse !important;;border-collapse: collapse; "><tr><td style="border-top: solid black 1pt ; text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="border-bottom: double black 3pt ; border-top: solid black 1pt ; text-align: center ;  vertical-align: middle; vertical-align: bottom ; "><strong>February 28, 2025</strong></td><td style="border-top: solid black 1pt ; text-align: center ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="border-bottom: double black 3pt ; border-top: solid black 1pt ; text-align: center ;  vertical-align: middle; vertical-align: bottom ; "><strong>August 31, 2024</strong></td></tr><tr><td colspan="2" style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; "><strong>ASSETS</strong></td><td colspan="3" style="border-top: double black 3pt ; text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="border-top: double black 3pt ; text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td colspan="2" style="vertical-align: bottom ; ">&#160;CURRENT ASSETS:</td><td colspan="3" style="vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="max-width:1%; width:1%; min-width:1%;;text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="max-width:74%; width:74%; min-width:74%;;text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">Cash and cash equivalents</td><td style="max-width:1%; width:1%; min-width:1%;;padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="max-width:10%; width:10%; min-width:10%;;padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">5,090,630</td><td style="max-width:1%; width:1%; min-width:1%;;padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="max-width:1%; width:1%; min-width:1%;;text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="max-width:1%; width:1%; min-width:1%;;padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="max-width:10%; width:10%; min-width:10%;;padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">4,952,184</td><td style="max-width:1%; width:1%; min-width:1%;;padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">Receivables:</td><td colspan="3" style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="vertical-align: bottom ; ">&#160;</td></tr><tr><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="vertical-align: middle;   text-align: left;   padding-left: 10.0px; text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">Trade, less allowance for credit losses</td><td colspan="3" style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="vertical-align: bottom ; ">&#160;</td></tr><tr><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="vertical-align: middle;   text-align: left;   padding-left: 15.0px; vertical-align: bottom ; ">of $310,000 as of February 28, 2025 and August 31, 2024</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">15,418,555</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">19,187,079</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="vertical-align: middle;   text-align: left;   padding-left: 10.0px; text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">Fees for services provided to joint ventures</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">957,220</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">1,235,016</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="vertical-align: middle;   text-align: left;   padding-left: 10.0px; text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">Income taxes</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">911,609</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">392,293</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">Inventories, net</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">14,985,166</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">14,390,844</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">Prepaid expenses</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">2,261,632</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">1,421,803</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="vertical-align: middle;   text-align: left;   padding-left: 30.0px; text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">Total current assets</td><td style="border-top: solid black 1pt ; border-bottom: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="border-top: solid black 1pt ; border-bottom: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">39,624,812</td><td style="border-top: solid black 1pt ; border-bottom: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; border-bottom: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; border-bottom: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">41,579,219</td><td style="border-top: solid black 1pt ; border-bottom: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td colspan="2" style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">PROPERTY AND EQUIPMENT, NET</td><td style="border-bottom: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; "><br >$</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">14,814,389</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">16,265,653</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td colspan="2" style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">OTHER ASSETS:</td><td colspan="3" style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="vertical-align: bottom ; ">&#160;</td></tr><tr><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">Investments in joint ventures</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">25,041,302</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">25,397,287</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">Deferred income tax, net</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">469,295</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">544,464</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">Intangible assets, net</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">8,666,639</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">5,682,945</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">Goodwill</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">4,782,376</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">4,782,376</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">Operating lease right of use assets</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">296,401</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">424,558</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="vertical-align: middle;   text-align: left;   padding-left: 10.0px; vertical-align: bottom ; ">Total other assets</td><td style="border-top: solid black 1pt ; border-bottom: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; border-bottom: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">39,256,013</td><td style="border-top: solid black 1pt ; border-bottom: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; border-bottom: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; border-bottom: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">36,831,630</td><td style="border-top: solid black 1pt ; border-bottom: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="vertical-align: middle;   text-align: left;   padding-left: 30.0px; vertical-align: bottom ; ">Total assets</td><td style="border-top: solid black 1pt ; border-bottom: double black 3pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: top ; ">$</td><td style="border-top: solid black 1pt ; border-bottom: double black 3pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: top ; ">93,695,214</td><td style="border-top: solid black 1pt ; border-bottom: double black 3pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: top ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: top ; ">&#160;</td><td style="border-top: solid black 1pt ; border-bottom: double black 3pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: top ; ">$</td><td style="border-top: solid black 1pt ; border-bottom: double black 3pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: top ; ">94,676,502</td><td style="border-top: solid black 1pt ; border-bottom: double black 3pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: top ; ">&#160;</td></tr><tr><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="border-top: double black 3pt ; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="border-top: double black 3pt ; vertical-align: bottom ; ">&#160;</td></tr><tr><td colspan="2" style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; "><strong>LIABILITIES AND EQUITY</strong></td><td colspan="3" style="vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="vertical-align: bottom ; ">&#160;</td></tr><tr><td colspan="2" style="vertical-align: bottom ; ">&#160;CURRENT LIABILITIES:</td><td colspan="3" style="vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="vertical-align: bottom ; ">&#160;</td></tr><tr><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">Line of credit</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">5,354,664</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">4,291,608</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">Term loan</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">2,746,121</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">2,820,835</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">Accounts payable</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">7,255,046</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">6,393,355</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">Income taxes payable</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">226,087</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">327,781</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">Accrued liabilities:</td><td colspan="3" style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="vertical-align: bottom ; ">&#160;</td></tr><tr><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="vertical-align: middle;   text-align: left;   padding-left: 10.0px; text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">Payroll and related benefits</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">1,779,611</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">3,163,372</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="vertical-align: middle;   text-align: left;   padding-left: 10.0px; text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">Other</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">686,809</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">574,876</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">Current portion of operating leases</td><td style="border-bottom: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">160,048</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">325,116</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="vertical-align: middle;   text-align: left;   padding-left: 30.0px; text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">Total current liabilities</td><td style="border-top: solid black 1pt ; border-bottom: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="border-top: solid black 1pt ; border-bottom: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">18,208,386</td><td style="border-top: solid black 1pt ; border-bottom: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; border-bottom: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="border-top: solid black 1pt ; border-bottom: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">17,896,943</td><td style="border-top: solid black 1pt ; border-bottom: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td colspan="2" style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">LONG-TERM LIABILITIES:</td><td colspan="3" style="vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="vertical-align: bottom ; ">&#160;</td></tr><tr><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">Deferred income tax, net</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">1,504,796</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">1,504,796</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">Operating leases, less current portion</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">136,353</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">99,442</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="vertical-align: middle;   text-align: left;   padding-left: 30.0px; text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">Total long-term liabilities</td><td style="border-top: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="border-top: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">1,641,149</td><td style="border-top: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="border-top: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">1,604,238</td><td style="border-top: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="vertical-align: middle;   text-align: left;   padding-left: 30.0px; text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="border-top: solid black 1pt ; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="border-top: solid black 1pt ; vertical-align: bottom ; ">&#160;</td></tr><tr><td colspan="2" style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">COMMITMENTS AND CONTINGENCIES</td><td colspan="3" style="vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="vertical-align: bottom ; ">&#160;</td></tr><tr><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="vertical-align: bottom ; ">&#160;</td></tr><tr><td colspan="2" style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">EQUITY:</td><td colspan="3" style="vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="vertical-align: bottom ; ">&#160;</td></tr><tr><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">Preferred stock, no par value; authorized 10,000 shares; none issued and outstanding</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#8212;</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#8212;</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">Common stock, $0.02 par value per share; authorized 15,000,000 shares as of</td><td colspan="3" style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="vertical-align: bottom ; ">&#160;</td></tr><tr><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="vertical-align: middle;   text-align: left;   padding-left: 15.0px; text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">February 28, 2025 and August 31, 2024; issued and outstanding 9,470,507 and 9,466,980, respectively</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">189,410</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">189,340</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">Additional paid-in capital</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">24,334,299</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">23,615,564</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">Retained earnings</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">53,440,749</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">53,771,211</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">Accumulated other comprehensive loss</td><td style="border-bottom: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">(8,218,805</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">)</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">(6,382,124</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">)</td></tr><tr><td style="vertical-align: bottom ; ">&#160;</td><td style="vertical-align: bottom ; ">Stockholders&#8217; equity</td><td style="border-top: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">69,745,653</td><td style="border-top: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">71,193,991</td><td style="border-top: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="vertical-align: bottom ; ">&#160;</td><td style="vertical-align: bottom ; ">Non-controlling interests</td><td style="border-bottom: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">4,100,026</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">3,981,330</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="vertical-align: bottom ; ">&#160;</td><td style="vertical-align: middle;   text-align: left;   padding-left: 30.0px; vertical-align: bottom ; ">Total equity</td><td style="border-top: solid black 1pt ; border-bottom: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; border-bottom: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">73,845,679</td><td style="border-top: solid black 1pt ; border-bottom: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; border-bottom: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; border-bottom: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">75,175,321</td><td style="border-top: solid black 1pt ; border-bottom: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="vertical-align: bottom ; ">&#160;</td><td style="vertical-align: middle;   text-align: left;   padding-left: 30.0px; vertical-align: bottom ; ">Total liabilities and equity</td><td style="border-top: solid black 1pt ; border-bottom: double black 3pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="border-top: solid black 1pt ; border-bottom: double black 3pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">93,695,214</td><td style="border-top: solid black 1pt ; border-bottom: double black 3pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; border-bottom: double black 3pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="border-top: solid black 1pt ; border-bottom: double black 3pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">94,676,502</td><td style="border-top: solid black 1pt ; border-bottom: double black 3pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td colspan="9" style="vertical-align: bottom ; ">&#160;</td></tr></table> <p align="left"><br ><br ><strong>NORTHERN TECHNOLOGIES INTERNATIONAL CORPORATION AND SUBSIDIARIES<br ></strong><strong>CONSOLIDATED STATEMENTS OF OPERATIONS </strong><strong>(UNAUDITED)<br ></strong><strong>FOR THE THREE AND SIX MONTHS ENDED FEBRUARY 28, 2025 AND FEBRUARY 29, 2024</strong></p> <table align="center" style="width:100%; border-collapse:collapse !important;;border-collapse: collapse; "><tr><td style="border-top: solid black 1pt ; vertical-align: bottom ; ">&#160;</td><td colspan="7" style="border-top: solid black 1pt ; text-align: center ;  vertical-align: middle; vertical-align: bottom ; "><strong>Three Months Ended </strong></td><td style="border-top: solid black 1pt ; text-align: center ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="7" style="border-bottom: solid black 1pt ; border-top: solid black 1pt ; text-align: center ;  vertical-align: middle; vertical-align: bottom ; "><strong>Six Months Ended</strong></td></tr><tr><td style="vertical-align: bottom ; ">&#160;</td><td colspan="3" style="border-top: solid black 1pt ; border-bottom: double black 3pt ; text-align: center ;  vertical-align: middle; vertical-align: bottom ; "><strong>February 28, 2025</strong></td><td style="text-align: center ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="border-top: solid black 1pt ; border-bottom: double black 3pt ; text-align: center ;  vertical-align: middle; vertical-align: bottom ; "><strong>February 29, 2024</strong></td><td style="text-align: center ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="border-top: solid black 1pt ; border-bottom: double black 3pt ; text-align: center ;  vertical-align: middle; vertical-align: bottom ; "><strong>February 28, 2025</strong></td><td style="text-align: center ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="border-top: solid black 1pt ; border-bottom: double black 3pt ; text-align: center ;  vertical-align: middle; vertical-align: bottom ; "><strong>February 29, 2024</strong></td></tr><tr><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">NET SALES:</td><td colspan="3" style="border-top: double black 3pt ; vertical-align: bottom ; ">&#160;</td><td style="vertical-align: bottom ; ">&#160;</td><td colspan="3" style="vertical-align: bottom ; ">&#160;</td><td style="vertical-align: bottom ; ">&#160;</td><td colspan="3" style="border-top: double black 3pt ; vertical-align: bottom ; ">&#160;</td><td style="vertical-align: bottom ; ">&#160;</td><td colspan="3" style="border-top: double black 3pt ; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="max-width:49%; width:49%; min-width:49%;;vertical-align: middle;   text-align: left;   padding-left: 15.0px; vertical-align: bottom ; ">Net sales</td><td style="max-width:1%; width:1%; min-width:1%;;padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="max-width:10%; width:10%; min-width:10%;;padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">19,072,066</td><td style="max-width:1%; width:1%; min-width:1%;;padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="max-width:1%; width:1%; min-width:1%;;text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="max-width:1%; width:1%; min-width:1%;;padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="max-width:10%; width:10%; min-width:10%;;padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">20,842,538</td><td style="max-width:1%; width:1%; min-width:1%;;padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="max-width:1%; width:1%; min-width:1%;;text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="max-width:1%; width:1%; min-width:1%;;padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="max-width:10%; width:10%; min-width:10%;;padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">40,410,459</td><td style="max-width:1%; width:1%; min-width:1%;;padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="max-width:1%; width:1%; min-width:1%;;text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="max-width:1%; width:1%; min-width:1%;;padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="max-width:10%; width:10%; min-width:10%;;padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">41,024,213</td><td style="max-width:1%; width:1%; min-width:1%;;padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="vertical-align: middle;   text-align: left;   padding-left: 15.0px; vertical-align: bottom ; ">Cost of goods sold</td><td style="border-bottom: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">12,276,482</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">12,503,374</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">25,451,922</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">25,350,775</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="vertical-align: middle;   text-align: left;   padding-left: 30.0px; vertical-align: bottom ; ">Gross profit</td><td style="border-top: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">6,795,584</td><td style="border-top: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">8,339,164</td><td style="border-top: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">14,958,537</td><td style="border-top: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">15,673,438</td><td style="border-top: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="vertical-align: bottom ; ">&#160;</td><td colspan="3" style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">JOINT VENTURE OPERATIONS:</td><td colspan="3" style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="vertical-align: middle;   text-align: left;   padding-left: 15.0px; vertical-align: bottom ; ">Equity in income from joint ventures</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">620,730</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">1,177,990</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">1,750,323</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">2,280,231</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="vertical-align: middle;   text-align: left;   padding-left: 15.0px; vertical-align: bottom ; ">Fees for services provided to joint ventures</td><td style="border-bottom: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">1,070,263</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">1,303,059</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">2,354,382</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">2,552,017</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="vertical-align: middle;   text-align: left;   padding-left: 30.0px; vertical-align: bottom ; ">Total joint venture operations</td><td style="border-top: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">1,690,993</td><td style="border-top: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">2,481,049</td><td style="border-top: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">4,104,705</td><td style="border-top: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">4,832,248</td><td style="border-top: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="vertical-align: middle;   text-align: left;   padding-left: 10.0px; text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="vertical-align: bottom ; ">&#160;</td></tr><tr><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">OPERATING EXPENSES:</td><td colspan="3" style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="vertical-align: bottom ; ">&#160;</td></tr><tr><td style="vertical-align: middle;   text-align: left;   padding-left: 15.0px; vertical-align: bottom ; ">Selling expenses</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">3,872,028</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">4,134,894</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">8,139,682</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">7,820,952</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="vertical-align: middle;   text-align: left;   padding-left: 15.0px; vertical-align: bottom ; ">General and administrative expenses</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">3,658,583</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">3,236,792</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">7,517,526</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">6,753,853</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="vertical-align: middle;   text-align: left;   padding-left: 15.0px; vertical-align: bottom ; ">Research and development expenses</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">1,288,899</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">1,242,256</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">2,632,296</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">2,348,177</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="vertical-align: middle;   text-align: left;   padding-left: 30.0px; vertical-align: bottom ; ">Total operating expenses</td><td style="border-top: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">8,819,510</td><td style="border-top: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">8,613,942</td><td style="border-top: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">18,289,504</td><td style="border-top: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">16,922,982</td><td style="border-top: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="vertical-align: bottom ; ">&#160;</td><td colspan="3" style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="vertical-align: bottom ; ">OPERATING (LOSS) INCOME</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">(332,933</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">)</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">2,206,271</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">773,738</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">3,582,704</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="vertical-align: bottom ; ">&#160;</td><td colspan="3" style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="vertical-align: bottom ; ">INTEREST INCOME</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">210,156</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">29,210</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">235,723</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">75,652</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="vertical-align: bottom ; ">INTEREST EXPENSE</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">(139,155</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">)</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">(77,758</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">)</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">(259,375</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">)</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">(188,896</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">)</td></tr><tr><td style="vertical-align: bottom ; ">OTHER INCOME</td><td style="border-bottom: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">1,139,756</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#8212;</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">1,139,756</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#8212;</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="vertical-align: bottom ; ">INCOME BEFORE INCOME TAX EXPENSE</td><td style="border-top: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">877,824</td><td style="border-top: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">2,157,723</td><td style="border-top: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">1,889,842</td><td style="border-top: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">3,469,460</td><td style="border-top: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="vertical-align: bottom ; ">&#160;</td><td colspan="3" style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="vertical-align: bottom ; ">INCOME TAX EXPENSE</td><td style="border-bottom: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">275,197</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">289,195</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">493,068</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">515,991</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="vertical-align: bottom ; ">NET INCOME</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">602,627</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">1,868,528</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">1,396,774</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">2,953,469</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="vertical-align: bottom ; ">&#160;</td><td colspan="3" style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="vertical-align: bottom ; ">NET INCOME ATTRIBUTABLE TO NON-CONTROLLING INTERESTS</td><td style="border-bottom: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">168,308</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">167,359</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">401,364</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">356,779</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="vertical-align: bottom ; ">NET INCOME ATTRIBUTABLE TO NTIC</td><td style="border-bottom: double black 3pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="border-bottom: double black 3pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">434,319</td><td style="border-bottom: double black 3pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: double black 3pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="border-bottom: double black 3pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">1,701,169</td><td style="border-bottom: double black 3pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: double black 3pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="border-bottom: double black 3pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">995,410</td><td style="border-bottom: double black 3pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: double black 3pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="border-bottom: double black 3pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">2,596,690</td><td style="border-bottom: double black 3pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="vertical-align: bottom ; ">&#160;</td><td colspan="3" style="border-top: double black 3pt ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="border-top: double black 3pt ; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="border-top: double black 3pt ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="border-top: double black 3pt ; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="vertical-align: bottom ; ">NET INCOME ATTRIBUTABLE TO NTIC PER COMMON SHARE:</td><td colspan="3" style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="vertical-align: bottom ; ">&#160;</td></tr><tr><td style="vertical-align: middle;   text-align: left;   padding-left: 15.0px; vertical-align: bottom ; ">Basic</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">0.05</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">0.18</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">0.11</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">0.28</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="vertical-align: middle;   text-align: left;   padding-left: 15.0px; vertical-align: bottom ; ">Diluted</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">0.04</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">0.17</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">0.10</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">0.27</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="vertical-align: bottom ; ">&#160;</td><td colspan="3" style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="vertical-align: bottom ; ">WEIGHTED AVERAGE COMMON SHARES</td><td colspan="3" style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="vertical-align: bottom ; ">ASSUMED OUTSTANDING:</td><td colspan="3" style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="vertical-align: middle;   text-align: left;   padding-left: 15.0px; vertical-align: bottom ; ">Basic</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">9,470,507</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">9,427,598</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">9,474,034</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">9,427,588</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="vertical-align: middle;   text-align: left;   padding-left: 15.0px; vertical-align: bottom ; ">Diluted</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">9,753,437</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">9,723,671</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">9,757,350</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">9,715,121</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="vertical-align: bottom ; "><br >CASH DIVIDENDS DECLARED PER COMMON SHARE</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">0.07</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">0.07</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">0.14</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">0.14</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td colspan="16" style="vertical-align: bottom ; ">&#160;</td></tr></table> <p><strong><br ></strong></p>  <p><strong>NORTHERN TECHNOLOGIES INTERNATIONAL CORPORATION AND SUBSIDIARIES</strong><br ><strong>RECONCILIATION OF GAAP TO NON-GAAP MEASURES</strong><br ><strong>(UNAUDITED, IN THOUSANDS, EXCEPT SHARE AND PER SHARE AMOUNTS)</strong></p>  <p align="justify">The accompanying press release contains certain non-GAAP financial measures, including adjusted net income attributable to NTIC and adjusted net income attributable to NTIC per diluted share, which are not calculated or presented in accordance with accounting principles generally accepted in the United States (GAAP). These non-GAAP financial measures are supplemental information and in addition to the financial measures presented in the accompanying release that are calculated and presented in accordance with GAAP. NTIC uses non-GAAP financial measures as supplemental measures of performance and believes these measures facilitate operating performance comparisons from period to period and company to company by factoring out potential differences caused by non-recurring, unusual or infrequent charges not related to NTIC&#8217;s regular, ongoing business. NTIC also believes that the presentation of certain non-GAAP financial measures provides useful information to investors in evaluating the company&#8217;s operations, period over period. Such non-GAAP financial measures should not be considered superior to, as a substitute for, or as an alternative to, and should be considered in conjunction with, the GAAP financial measures presented in the release. The non-GAAP financial measures in the accompanying release may differ from similar measures used by other companies.</p>  <p align="justify">The following is a reconciliation of NTIC&#8217;s reported net income attributable to NTIC and reported net income attributable to NTIC per diluted common share to adjusted net income attributable to NTIC and adjusted net income attributable to NTIC per diluted common share, in each case, as adjusted to exclude the contribution from the receipt of an ERC payment and amortization expense.</p> <table align="center" style="width:100%; border-collapse:collapse !important;;border-collapse: collapse; "><tr><td style="vertical-align: bottom ; ">&#160;</td><td colspan="6" style="border-bottom: solid black 1pt ; text-align: center ;  vertical-align: middle; vertical-align: bottom ; "><strong>Three Months Ended</strong></td><td style="text-align: center ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="6" style="border-bottom: solid black 1pt ; text-align: center ;  vertical-align: middle; vertical-align: bottom ; "><strong>Six Months Ended </strong></td></tr><tr><td style="vertical-align: bottom ; ">&#160;</td><td colspan="3" style="border-top: solid black 1pt ; border-bottom: solid black 1pt ; text-align: center ;  vertical-align: middle; vertical-align: bottom ; "><strong>February 28,</strong></td><td style="text-align: center ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="2" style="border-top: solid black 1pt ; border-bottom: solid black 1pt ; text-align: center ;  vertical-align: middle; vertical-align: bottom ; "><strong>February 29,</strong></td><td style="text-align: center ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="border-bottom: solid black 1pt ; text-align: center ;  vertical-align: middle; vertical-align: bottom ; "><strong>February 28,</strong></td><td style="text-align: center ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="2" style="border-bottom: solid black 1pt ; text-align: center ;  vertical-align: middle; vertical-align: bottom ; "><strong>February 29,</strong></td></tr><tr><td style="vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; border-bottom: double black 3pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; border-bottom: double black 3pt ; padding-left: 0 ; padding-right: 0 ; text-align: center ;  vertical-align: middle; vertical-align: bottom ; "><strong>2025</strong></td><td style="border-top: solid black 1pt ; border-bottom: double black 3pt ; padding-left: 0 ; text-align: center ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: center ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="2" style="border-top: solid black 1pt ; border-bottom: double black 3pt ; padding-right: 0 ; text-align: center ;  vertical-align: middle; vertical-align: bottom ; "><strong>2024</strong></td><td style="text-align: center ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; border-bottom: double black 3pt ; padding-right: 0 ; text-align: center ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; border-bottom: double black 3pt ; padding-left: 0 ; padding-right: 0 ; text-align: center ;  vertical-align: middle; vertical-align: bottom ; "><strong>2025</strong></td><td style="border-top: solid black 1pt ; border-bottom: double black 3pt ; padding-left: 0 ; text-align: center ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: center ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="2" style="border-top: solid black 1pt ; border-bottom: double black 3pt ; padding-right: 0 ; text-align: center ;  vertical-align: middle; vertical-align: bottom ; "><strong>2024</strong></td></tr><tr><td style="text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="border-top: double black 3pt ; vertical-align: bottom ; ">&#160;</td><td style="vertical-align: bottom ; ">&#160;</td><td colspan="2" style="vertical-align: bottom ; ">&#160;</td><td style="vertical-align: bottom ; ">&#160;</td><td colspan="3" style="border-top: double black 3pt ; vertical-align: bottom ; ">&#160;</td><td style="vertical-align: bottom ; ">&#160;</td><td colspan="2" style="border-top: double black 3pt ; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="max-width:49%; width:49%; min-width:49%;;text-align: justify ;  vertical-align: middle; vertical-align: bottom ; ">Net income attributable to NTIC, as reported</td><td style="max-width:1%; width:1%; min-width:1%;;padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="max-width:10%; width:10%; min-width:10%;;padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">434,319</td><td style="max-width:1%; width:1%; min-width:1%;;padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="max-width:1%; width:1%; min-width:1%;;text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="max-width:1%; width:1%; min-width:1%;;padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="max-width:11%; width:11%; min-width:11%;;padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">1,701,169</td><td style="max-width:1%; width:1%; min-width:1%;;text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="max-width:1%; width:1%; min-width:1%;;padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="max-width:10%; width:10%; min-width:10%;;padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">995,410</td><td style="max-width:1%; width:1%; min-width:1%;;padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="max-width:1%; width:1%; min-width:1%;;text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="max-width:1%; width:1%; min-width:1%;;padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="max-width:11%; width:11%; min-width:11%;;padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">2,596,690</td></tr><tr><td style="vertical-align: middle;   text-align: left;   padding-left: 10.0px; vertical-align: bottom ; ">Adjustments for adjusted net income:</td><td colspan="3" style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="2" style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="2" style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="vertical-align: middle;   text-align: left;   padding-left: 20.0px; vertical-align: bottom ; ">Other income from ERC</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">(1,139,756</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">)</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">-</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">(1,139,756</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">)</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">-</td></tr><tr><td style="vertical-align: middle;   text-align: left;   padding-left: 20.0px; vertical-align: bottom ; ">Bonus expense impact from ERC</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">300,000</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">-</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">300,000</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">-</td></tr><tr><td style="vertical-align: middle;   text-align: left;   padding-left: 20.0px; vertical-align: bottom ; ">Amortization expense</td><td style="border-bottom: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">105,783</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">105,783</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">211,566</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">211,566</td></tr><tr><td style="vertical-align: bottom ; ">Non-GAAP adjusted net income</td><td style="border-top: solid black 1pt ; border-bottom: double black 3pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="border-top: solid black 1pt ; border-bottom: double black 3pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">(299,654</td><td style="border-top: solid black 1pt ; border-bottom: double black 3pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">)</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; border-bottom: double black 3pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="border-top: solid black 1pt ; border-bottom: double black 3pt ; padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">1,806,952</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; border-bottom: double black 3pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="border-top: solid black 1pt ; border-bottom: double black 3pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">367,220</td><td style="border-top: solid black 1pt ; border-bottom: double black 3pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; border-bottom: double black 3pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="border-top: solid black 1pt ; border-bottom: double black 3pt ; padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">2,808,256</td></tr><tr><td style="vertical-align: bottom ; ">&#160;</td><td colspan="3" style="border-top: double black 3pt ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="2" style="border-top: double black 3pt ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="border-top: double black 3pt ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="2" style="border-top: double black 3pt ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td style="vertical-align: bottom ; ">Weighted average shares outstanding (diluted)</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">9,753,437</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">9,723,671</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">9,757,350</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">9,715,121</td></tr><tr><td style="vertical-align: bottom ; ">Diluted net income per share, as reported</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">0.04</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">0.17</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">0.10</td><td style="padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">0.27</td></tr><tr><td style="vertical-align: bottom ; ">Adjustments for adjusted net income, net of tax impact, per diluted share<sup> 1</sup></td><td style="border-bottom: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">(0.09</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">)</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">0.01</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">(0.06</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">)</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-bottom: solid black 1pt ; padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">0.02</td></tr><tr><td style="vertical-align: bottom ; ">Non-GAAP diluted adjusted net income per share</td><td style="border-top: solid black 1pt ; border-bottom: double black 3pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="border-top: solid black 1pt ; border-bottom: double black 3pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">(0.03</td><td style="border-top: solid black 1pt ; border-bottom: double black 3pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">)</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; border-bottom: double black 3pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="border-top: solid black 1pt ; border-bottom: double black 3pt ; padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">0.19</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; border-bottom: double black 3pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="border-top: solid black 1pt ; border-bottom: double black 3pt ; padding-left: 0 ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">0.04</td><td style="border-top: solid black 1pt ; border-bottom: double black 3pt ; padding-left: 0 ; text-align: left ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="border-top: solid black 1pt ; border-bottom: double black 3pt ; padding-right: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">$</td><td style="border-top: solid black 1pt ; border-bottom: double black 3pt ; padding-left: 0 ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">0.29</td></tr><tr><td style="vertical-align: bottom ; ">&#160;</td><td colspan="3" style="border-top: double black 3pt ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="2" style="border-top: double black 3pt ; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="3" style="border-top: double black 3pt ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td style="text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td><td colspan="2" style="border-top: double black 3pt ; text-align: right ;  vertical-align: middle; vertical-align: bottom ; ">&#160;</td></tr><tr><td colspan="14" style="vertical-align: bottom ; "><sup>1</sup> Includes adjustments related to the items noted above, net of tax</td></tr></table> <p><br ></p>  <p><strong>Investor and Media Contact:</strong><br >Matthew Wolsfeld, CFO<br >NTIC<br >(763) 225-6600</p> </p><p ></p></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>3
<FILENAME>gnw-20190101.xsd
<DESCRIPTION>XBRL SCHEMA FILE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" ?>
<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:dei="http://xbrl.sec.gov/dei/2023" xmlns:us-gaap="http://fasb.org/us-gaap/2023" xmlns:srt="http://fasb.org/srt/2023" xmlns:srt-types="http://fasb.org/srt-types/2023" xmlns:gnw="http://globenewswire.com/20190101" elementFormDefault="qualified" targetNamespace="http://globenewswire.com/20190101">
    <annotation>
      <appinfo>
	<link:roleType roleURI="http://globenewswire.com/role/Cover" id="Cover">
	  <link:definition>00000001 - Document - Cover</link:definition>
	  <link:usedOn>link:presentationLink</link:usedOn>
	  <link:usedOn>link:calculationLink</link:usedOn>
	  <link:usedOn>link:definitionLink</link:usedOn>
	</link:roleType>
	<link:linkbaseRef xlink:type="simple" xlink:href="gnw-20190101_pre.xml" xlink:role="http://www.xbrl.org/2003/role/presentationLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:title="Presentation Links" />
	<link:linkbaseRef xlink:type="simple" xlink:href="gnw-20190101_lab.xml" xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:title="Label Links" />
	<link:linkbaseRef xlink:type="simple" xlink:href="gnw-20190101_def.xml" xlink:role="http://www.xbrl.org/2003/role/definitionLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:title="Definition Links" />
      </appinfo>
    </annotation>
    <import namespace="http://www.xbrl.org/2003/instance" schemaLocation="http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd" />
    <import namespace="http://www.xbrl.org/2003/linkbase" schemaLocation="http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd" />
    <import namespace="http://xbrl.sec.gov/dei/2023" schemaLocation="https://xbrl.sec.gov/dei/2023/dei-2023.xsd" />
    <import namespace="http://fasb.org/us-gaap/2023" schemaLocation="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd" />
    <import namespace="http://fasb.org/us-types/2023" schemaLocation="https://xbrl.fasb.org/us-gaap/2023/elts/us-types-2023.xsd" />
    <import namespace="http://www.xbrl.org/dtr/type/non-numeric" schemaLocation="http://www.xbrl.org/dtr/type/nonNumeric-2009-12-16.xsd" />
    <import namespace="http://www.xbrl.org/dtr/type/numeric" schemaLocation="http://www.xbrl.org/dtr/type/numeric-2009-12-16.xsd" />
    <import namespace="http://xbrl.sec.gov/country/2023" schemaLocation="https://xbrl.sec.gov/country/2023/country-2023.xsd" />
    <import namespace="http://fasb.org/srt/2023" schemaLocation="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd" />
    <import namespace="http://fasb.org/srt-types/2023" schemaLocation="https://xbrl.fasb.org/srt/2023/elts/srt-types-2023.xsd" />
</schema>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.DEF
<SEQUENCE>4
<FILENAME>gnw-20190101_def.xml
<DESCRIPTION>XBRL DEFINITION FILE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
<link:linkbase xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xbrli="http://www.xbrl.org/2003/instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
    <link:roleRef roleURI="http://globenewswire.com/role/Cover" xlink:href="gnw-20190101.xsd#Cover" xlink:type="simple" />
    <link:arcroleRef xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#hypercube-dimension" arcroleURI="http://xbrl.org/int/dim/arcrole/hypercube-dimension" />
    <link:arcroleRef xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-domain" arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-domain" />
    <link:arcroleRef xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#domain-member" arcroleURI="http://xbrl.org/int/dim/arcrole/domain-member" />
    <link:arcroleRef xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#all" arcroleURI="http://xbrl.org/int/dim/arcrole/all" />
    <link:arcroleRef xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#notAll" arcroleURI="http://xbrl.org/int/dim/arcrole/notAll" />
    <link:arcroleRef xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-default" arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-default" />
    <link:definitionLink xlink:type="extended" xlink:role="http://globenewswire.com/role/Cover" xlink:title="00000001 - Document - Cover">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xbrldt:contextElement="segment" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStatementTable" xlink:type="arc" order="10" xbrldt:closed="true" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="loc_us-gaapStatementClassOfStockAxis" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapStatementClassOfStockAxis" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ClassOfStockDomain" xlink:label="loc_us-gaapClassOfStockDomain" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapStatementClassOfStockAxis" xlink:to="loc_us-gaapClassOfStockDomain" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ClassOfStockDomain" xlink:label="loc_us-gaapClassOfStockDomain_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xbrldt:contextElement="segment" xlink:from="loc_us-gaapStatementClassOfStockAxis" xlink:to="loc_us-gaapClassOfStockDomain_10" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonClassAMember" xlink:label="loc_us-gaapCommonClassAMember_10" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapClassOfStockDomain" xlink:to="loc_us-gaapCommonClassAMember_10" xlink:type="arc" order="11" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredClassAMember" xlink:label="loc_us-gaapPreferredClassAMember_20" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapClassOfStockDomain" xlink:to="loc_us-gaapPreferredClassAMember_20" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentType" xlink:label="loc_deiDocumentType_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiDocumentType_40" xlink:type="arc" order="0" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AmendmentFlag" xlink:label="loc_deiAmendmentFlag_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiAmendmentFlag_40" xlink:type="arc" order="1" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AmendmentDescription" xlink:label="loc_deiAmendmentDescription_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiAmendmentDescription_40" xlink:type="arc" order="2" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentRegistrationStatement" xlink:label="loc_deiDocumentRegistrationStatement_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiDocumentRegistrationStatement_40" xlink:type="arc" order="3" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentAnnualReport" xlink:label="loc_deiDocumentAnnualReport_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiDocumentAnnualReport_40" xlink:type="arc" order="4" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentQuarterlyReport" xlink:label="loc_deiDocumentQuarterlyReport_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiDocumentQuarterlyReport_40" xlink:type="arc" order="5" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentTransitionReport" xlink:label="loc_deiDocumentTransitionReport_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiDocumentTransitionReport_40" xlink:type="arc" order="6" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentShellCompanyReport" xlink:label="loc_deiDocumentShellCompanyReport_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiDocumentShellCompanyReport_40" xlink:type="arc" order="7" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentShellCompanyEventDate" xlink:label="loc_deiDocumentShellCompanyEventDate_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiDocumentShellCompanyEventDate_40" xlink:type="arc" order="8" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentPeriodStartDate" xlink:label="loc_deiDocumentPeriodStartDate_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiDocumentPeriodStartDate_40" xlink:type="arc" order="9" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentPeriodEndDate" xlink:label="loc_deiDocumentPeriodEndDate_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiDocumentPeriodEndDate_40" xlink:type="arc" order="10" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CurrentFiscalYearEndDate" xlink:label="loc_deiCurrentFiscalYearEndDate_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiCurrentFiscalYearEndDate_40" xlink:type="arc" order="11" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityFileNumber" xlink:label="loc_deiEntityFileNumber_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiEntityFileNumber_40" xlink:type="arc" order="12" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityRegistrantName" xlink:label="loc_deiEntityRegistrantName_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiEntityRegistrantName_40" xlink:type="arc" order="13" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCentralIndexKey" xlink:label="loc_deiEntityCentralIndexKey_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiEntityCentralIndexKey_40" xlink:type="arc" order="14" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityPrimarySicNumber" xlink:label="loc_deiEntityPrimarySicNumber_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiEntityPrimarySicNumber_40" xlink:type="arc" order="15" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityTaxIdentificationNumber" xlink:label="loc_deiEntityTaxIdentificationNumber_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiEntityTaxIdentificationNumber_40" xlink:type="arc" order="16" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="loc_deiEntityIncorporationStateCountryCode_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiEntityIncorporationStateCountryCode_40" xlink:type="arc" order="17" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressAddressLine1" xlink:label="loc_deiEntityAddressAddressLine1_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiEntityAddressAddressLine1_40" xlink:type="arc" order="18" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressAddressLine2" xlink:label="loc_deiEntityAddressAddressLine2_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiEntityAddressAddressLine2_40" xlink:type="arc" order="19" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressAddressLine3" xlink:label="loc_deiEntityAddressAddressLine3_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiEntityAddressAddressLine3_40" xlink:type="arc" order="20" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressCityOrTown" xlink:label="loc_deiEntityAddressCityOrTown_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiEntityAddressCityOrTown_40" xlink:type="arc" order="21" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressStateOrProvince" xlink:label="loc_deiEntityAddressStateOrProvince_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiEntityAddressStateOrProvince_40" xlink:type="arc" order="22" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressCountry" xlink:label="loc_deiEntityAddressCountry_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiEntityAddressCountry_40" xlink:type="arc" order="23" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressPostalZipCode" xlink:label="loc_deiEntityAddressPostalZipCode_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiEntityAddressPostalZipCode_40" xlink:type="arc" order="24" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CountryRegion" xlink:label="loc_deiCountryRegion_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiCountryRegion_40" xlink:type="arc" order="25" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CityAreaCode" xlink:label="loc_deiCityAreaCode_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiCityAreaCode_40" xlink:type="arc" order="26" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LocalPhoneNumber" xlink:label="loc_deiLocalPhoneNumber_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiLocalPhoneNumber_40" xlink:type="arc" order="27" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_Extension" xlink:label="loc_deiExtension_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiExtension_40" xlink:type="arc" order="28" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_WrittenCommunications" xlink:label="loc_deiWrittenCommunications_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiWrittenCommunications_40" xlink:type="arc" order="29" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_SolicitingMaterial" xlink:label="loc_deiSolicitingMaterial_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiSolicitingMaterial_40" xlink:type="arc" order="30" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_PreCommencementTenderOffer" xlink:label="loc_deiPreCommencementTenderOffer_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiPreCommencementTenderOffer_40" xlink:type="arc" order="31" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_PreCommencementIssuerTenderOffer" xlink:label="loc_deiPreCommencementIssuerTenderOffer_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiPreCommencementIssuerTenderOffer_40" xlink:type="arc" order="32" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_Security12bTitle" xlink:label="loc_deiSecurity12bTitle_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiSecurity12bTitle_40" xlink:type="arc" order="33" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_NoTradingSymbolFlag" xlink:label="loc_deiNoTradingSymbolFlag_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiNoTradingSymbolFlag_40" xlink:type="arc" order="34" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_TradingSymbol" xlink:label="loc_deiTradingSymbol_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiTradingSymbol_40" xlink:type="arc" order="35" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_SecurityExchangeName" xlink:label="loc_deiSecurityExchangeName_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiSecurityExchangeName_40" xlink:type="arc" order="36" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_Security12gTitle" xlink:label="loc_deiSecurity12gTitle_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiSecurity12gTitle_40" xlink:type="arc" order="37" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_SecurityReportingObligation" xlink:label="loc_deiSecurityReportingObligation_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiSecurityReportingObligation_40" xlink:type="arc" order="38" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AnnualInformationForm" xlink:label="loc_deiAnnualInformationForm_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiAnnualInformationForm_40" xlink:type="arc" order="39" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AuditedAnnualFinancialStatements" xlink:label="loc_deiAuditedAnnualFinancialStatements_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiAuditedAnnualFinancialStatements_40" xlink:type="arc" order="40" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityWellKnownSeasonedIssuer" xlink:label="loc_deiEntityWellKnownSeasonedIssuer_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiEntityWellKnownSeasonedIssuer_40" xlink:type="arc" order="41" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityVoluntaryFilers" xlink:label="loc_deiEntityVoluntaryFilers_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiEntityVoluntaryFilers_40" xlink:type="arc" order="42" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCurrentReportingStatus" xlink:label="loc_deiEntityCurrentReportingStatus_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiEntityCurrentReportingStatus_40" xlink:type="arc" order="43" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityInteractiveDataCurrent" xlink:label="loc_deiEntityInteractiveDataCurrent_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiEntityInteractiveDataCurrent_40" xlink:type="arc" order="44" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityFilerCategory" xlink:label="loc_deiEntityFilerCategory_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiEntityFilerCategory_40" xlink:type="arc" order="45" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntitySmallBusiness" xlink:label="loc_deiEntitySmallBusiness_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiEntitySmallBusiness_40" xlink:type="arc" order="46" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityEmergingGrowthCompany" xlink:label="loc_deiEntityEmergingGrowthCompany_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiEntityEmergingGrowthCompany_40" xlink:type="arc" order="47" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityExTransitionPeriod" xlink:label="loc_deiEntityExTransitionPeriod_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiEntityExTransitionPeriod_40" xlink:type="arc" order="48" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentAccountingStandard" xlink:label="loc_deiDocumentAccountingStandard_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiDocumentAccountingStandard_40" xlink:type="arc" order="49" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_OtherReportingStandardItemNumber" xlink:label="loc_deiOtherReportingStandardItemNumber_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiOtherReportingStandardItemNumber_40" xlink:type="arc" order="50" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityShellCompany" xlink:label="loc_deiEntityShellCompany_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiEntityShellCompany_40" xlink:type="arc" order="51" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityPublicFloat" xlink:label="loc_deiEntityPublicFloat_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiEntityPublicFloat_40" xlink:type="arc" order="52" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityBankruptcyProceedingsReportingCurrent" xlink:label="loc_deiEntityBankruptcyProceedingsReportingCurrent_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiEntityBankruptcyProceedingsReportingCurrent_40" xlink:type="arc" order="53" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="loc_deiEntityCommonStockSharesOutstanding_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiEntityCommonStockSharesOutstanding_40" xlink:type="arc" order="54" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentsIncorporatedByReferenceTextBlock" xlink:label="loc_deiDocumentsIncorporatedByReferenceTextBlock_40" />
      <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_deiDocumentsIncorporatedByReferenceTextBlock_40" xlink:type="arc" order="55" />
    </link:definitionLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.LAB
<SEQUENCE>5
<FILENAME>gnw-20190101_lab.xml
<DESCRIPTION>XBRL LABEL FILE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
<link:linkbase xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrli="http://www.xbrl.org/2003/instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
    <link:roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedLabel" roleURI="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodEndLabel" roleURI="http://www.xbrl.org/2009/role/negatedPeriodEndLabel" />
    <link:roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodStartLabel" roleURI="http://www.xbrl.org/2009/role/negatedPeriodStartLabel" />
    <link:roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTotalLabel" roleURI="http://www.xbrl.org/2009/role/negatedTotalLabel" />
    <link:roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedNetLabel" roleURI="http://www.xbrl.org/2009/role/negatedNetLabel" />
    <link:roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTerseLabel" roleURI="http://www.xbrl.org/2009/role/negatedTerseLabel" />
    <link:roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/net-2009-12-16.xsd#netLabel" roleURI="http://www.xbrl.org/2009/role/netLabel" />
    <link:labelLink xlink:type="extended" xlink:role="http://www.xbrl.org/2003/role/link">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CoverAbstract" xlink:label="dei_CoverAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CoverAbstract" xlink:to="dei_CoverAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_CoverAbstract_lbl" xml:lang="en-US">Cover [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentType" xlink:label="dei_DocumentType" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentType" xlink:to="dei_DocumentType_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentType_lbl" xml:lang="en-US">Document Type</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AmendmentFlag" xlink:label="dei_AmendmentFlag" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AmendmentFlag" xlink:to="dei_AmendmentFlag_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_AmendmentFlag_lbl" xml:lang="en-US">Amendment Flag</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AmendmentDescription" xlink:label="dei_AmendmentDescription" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AmendmentDescription" xlink:to="dei_AmendmentDescription_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_AmendmentDescription_lbl" xml:lang="en-US">Amendment Description</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentRegistrationStatement" xlink:label="dei_DocumentRegistrationStatement" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentRegistrationStatement" xlink:to="dei_DocumentRegistrationStatement_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentRegistrationStatement_lbl" xml:lang="en-US">Document Registration Statement</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentAnnualReport" xlink:label="dei_DocumentAnnualReport" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentAnnualReport" xlink:to="dei_DocumentAnnualReport_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentAnnualReport_lbl" xml:lang="en-US">Document Annual Report</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentQuarterlyReport" xlink:label="dei_DocumentQuarterlyReport" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentQuarterlyReport" xlink:to="dei_DocumentQuarterlyReport_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentQuarterlyReport_lbl" xml:lang="en-US">Document Quarterly Report</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentTransitionReport" xlink:label="dei_DocumentTransitionReport" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentTransitionReport" xlink:to="dei_DocumentTransitionReport_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentTransitionReport_lbl" xml:lang="en-US">Document Transition Report</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentShellCompanyReport" xlink:label="dei_DocumentShellCompanyReport" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentShellCompanyReport" xlink:to="dei_DocumentShellCompanyReport_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentShellCompanyReport_lbl" xml:lang="en-US">Document Shell Company Report</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentShellCompanyEventDate" xlink:label="dei_DocumentShellCompanyEventDate" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentShellCompanyEventDate" xlink:to="dei_DocumentShellCompanyEventDate_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentShellCompanyEventDate_lbl" xml:lang="en-US">Document Shell Company Event Date</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentPeriodStartDate" xlink:label="dei_DocumentPeriodStartDate" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentPeriodStartDate" xlink:to="dei_DocumentPeriodStartDate_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentPeriodStartDate_lbl" xml:lang="en-US">Document Period Start Date</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentPeriodEndDate" xlink:label="dei_DocumentPeriodEndDate" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentPeriodEndDate" xlink:to="dei_DocumentPeriodEndDate_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentPeriodEndDate_lbl" xml:lang="en-US">Document Period End Date</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="dei_DocumentFiscalPeriodFocus" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentFiscalPeriodFocus" xlink:to="dei_DocumentFiscalPeriodFocus_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentFiscalPeriodFocus_lbl" xml:lang="en-US">Document Fiscal Period Focus</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFiscalYearFocus" xlink:label="dei_DocumentFiscalYearFocus" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentFiscalYearFocus" xlink:to="dei_DocumentFiscalYearFocus_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentFiscalYearFocus_lbl" xml:lang="en-US">Document Fiscal Year Focus</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CurrentFiscalYearEndDate" xlink:label="dei_CurrentFiscalYearEndDate" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CurrentFiscalYearEndDate" xlink:to="dei_CurrentFiscalYearEndDate_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_CurrentFiscalYearEndDate_lbl" xml:lang="en-US">Current Fiscal Year End Date</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityFileNumber" xlink:label="dei_EntityFileNumber" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityFileNumber" xlink:to="dei_EntityFileNumber_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityFileNumber_lbl" xml:lang="en-US">Entity File Number</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityRegistrantName" xlink:label="dei_EntityRegistrantName" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityRegistrantName" xlink:to="dei_EntityRegistrantName_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityRegistrantName_lbl" xml:lang="en-US">Entity Registrant Name</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCentralIndexKey" xlink:label="dei_EntityCentralIndexKey" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCentralIndexKey" xlink:to="dei_EntityCentralIndexKey_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityCentralIndexKey_lbl" xml:lang="en-US">Entity Central Index Key</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityPrimarySicNumber" xlink:label="dei_EntityPrimarySicNumber" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityPrimarySicNumber" xlink:to="dei_EntityPrimarySicNumber_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityPrimarySicNumber_lbl" xml:lang="en-US">Entity Primary SIC Number</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityTaxIdentificationNumber" xlink:label="dei_EntityTaxIdentificationNumber" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityTaxIdentificationNumber" xlink:to="dei_EntityTaxIdentificationNumber_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityTaxIdentificationNumber_lbl" xml:lang="en-US">Entity Tax Identification Number</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="dei_EntityIncorporationStateCountryCode" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityIncorporationStateCountryCode" xlink:to="dei_EntityIncorporationStateCountryCode_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityIncorporationStateCountryCode_lbl" xml:lang="en-US">Entity Incorporation, State or Country Code</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressAddressLine1" xlink:label="dei_EntityAddressAddressLine1" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressAddressLine1" xlink:to="dei_EntityAddressAddressLine1_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressAddressLine1_lbl" xml:lang="en-US">Entity Address, Address Line One</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressAddressLine2" xlink:label="dei_EntityAddressAddressLine2" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressAddressLine2" xlink:to="dei_EntityAddressAddressLine2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressAddressLine2_lbl" xml:lang="en-US">Entity Address, Address Line Two</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressAddressLine3" xlink:label="dei_EntityAddressAddressLine3" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressAddressLine3" xlink:to="dei_EntityAddressAddressLine3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressAddressLine3_lbl" xml:lang="en-US">Entity Address, Address Line Three</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressCityOrTown" xlink:label="dei_EntityAddressCityOrTown" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressCityOrTown" xlink:to="dei_EntityAddressCityOrTown_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressCityOrTown_lbl" xml:lang="en-US">Entity Address, City or Town</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressStateOrProvince" xlink:label="dei_EntityAddressStateOrProvince" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressStateOrProvince" xlink:to="dei_EntityAddressStateOrProvince_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressStateOrProvince_lbl" xml:lang="en-US">Entity Address, State or Province</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressCountry" xlink:label="dei_EntityAddressCountry" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressCountry" xlink:to="dei_EntityAddressCountry_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressCountry_lbl" xml:lang="en-US">Entity Address, Country</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressPostalZipCode" xlink:label="dei_EntityAddressPostalZipCode" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressPostalZipCode" xlink:to="dei_EntityAddressPostalZipCode_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressPostalZipCode_lbl" xml:lang="en-US">Entity Address, Postal Zip Code</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CountryRegion" xlink:label="dei_CountryRegion" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CountryRegion" xlink:to="dei_CountryRegion_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_CountryRegion_lbl" xml:lang="en-US">Country Region</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CityAreaCode" xlink:label="dei_CityAreaCode" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CityAreaCode" xlink:to="dei_CityAreaCode_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_CityAreaCode_lbl" xml:lang="en-US">City Area Code</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LocalPhoneNumber" xlink:label="dei_LocalPhoneNumber" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_LocalPhoneNumber" xlink:to="dei_LocalPhoneNumber_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_LocalPhoneNumber_lbl" xml:lang="en-US">Local Phone Number</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_Extension" xlink:label="dei_Extension" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_Extension" xlink:to="dei_Extension_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_Extension_lbl" xml:lang="en-US">Extension</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_WrittenCommunications" xlink:label="dei_WrittenCommunications" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_WrittenCommunications" xlink:to="dei_WrittenCommunications_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_WrittenCommunications_lbl" xml:lang="en-US">Written Communications</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_SolicitingMaterial" xlink:label="dei_SolicitingMaterial" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_SolicitingMaterial" xlink:to="dei_SolicitingMaterial_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_SolicitingMaterial_lbl" xml:lang="en-US">Soliciting Material</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_PreCommencementTenderOffer" xlink:label="dei_PreCommencementTenderOffer" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_PreCommencementTenderOffer" xlink:to="dei_PreCommencementTenderOffer_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_PreCommencementTenderOffer_lbl" xml:lang="en-US">Pre-commencement Tender Offer</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_PreCommencementIssuerTenderOffer" xlink:label="dei_PreCommencementIssuerTenderOffer" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_PreCommencementIssuerTenderOffer" xlink:to="dei_PreCommencementIssuerTenderOffer_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_PreCommencementIssuerTenderOffer_lbl" xml:lang="en-US">Pre-commencement Issuer Tender Offer</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_Security12bTitle" xlink:label="dei_Security12bTitle" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_Security12bTitle" xlink:to="dei_Security12bTitle_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_Security12bTitle_lbl" xml:lang="en-US">Title of 12(b) Security</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_NoTradingSymbolFlag" xlink:label="dei_NoTradingSymbolFlag" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_NoTradingSymbolFlag" xlink:to="dei_NoTradingSymbolFlag_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_NoTradingSymbolFlag_lbl" xml:lang="en-US">No Trading Symbol Flag</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_TradingSymbol" xlink:label="dei_TradingSymbol" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_TradingSymbol" xlink:to="dei_TradingSymbol_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_TradingSymbol_lbl" xml:lang="en-US">Trading Symbol</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_SecurityExchangeName" xlink:label="dei_SecurityExchangeName" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_SecurityExchangeName" xlink:to="dei_SecurityExchangeName_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_SecurityExchangeName_lbl" xml:lang="en-US">Security Exchange Name</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_Security12gTitle" xlink:label="dei_Security12gTitle" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_Security12gTitle" xlink:to="dei_Security12gTitle_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_Security12gTitle_lbl" xml:lang="en-US">Title of 12(g) Security</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_SecurityReportingObligation" xlink:label="dei_SecurityReportingObligation" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_SecurityReportingObligation" xlink:to="dei_SecurityReportingObligation_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_SecurityReportingObligation_lbl" xml:lang="en-US">Security Reporting Obligation</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AnnualInformationForm" xlink:label="dei_AnnualInformationForm" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AnnualInformationForm" xlink:to="dei_AnnualInformationForm_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_AnnualInformationForm_lbl" xml:lang="en-US">Annual Information Form</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AuditedAnnualFinancialStatements" xlink:label="dei_AuditedAnnualFinancialStatements" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AuditedAnnualFinancialStatements" xlink:to="dei_AuditedAnnualFinancialStatements_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_AuditedAnnualFinancialStatements_lbl" xml:lang="en-US">Audited Annual Financial Statements</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityWellKnownSeasonedIssuer" xlink:label="dei_EntityWellKnownSeasonedIssuer" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityWellKnownSeasonedIssuer" xlink:to="dei_EntityWellKnownSeasonedIssuer_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityWellKnownSeasonedIssuer_lbl" xml:lang="en-US">Entity Well-known Seasoned Issuer</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityVoluntaryFilers" xlink:label="dei_EntityVoluntaryFilers" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityVoluntaryFilers" xlink:to="dei_EntityVoluntaryFilers_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityVoluntaryFilers_lbl" xml:lang="en-US">Entity Voluntary Filers</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCurrentReportingStatus" xlink:label="dei_EntityCurrentReportingStatus" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCurrentReportingStatus" xlink:to="dei_EntityCurrentReportingStatus_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityCurrentReportingStatus_lbl" xml:lang="en-US">Entity Current Reporting Status</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityInteractiveDataCurrent" xlink:label="dei_EntityInteractiveDataCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityInteractiveDataCurrent" xlink:to="dei_EntityInteractiveDataCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityInteractiveDataCurrent_lbl" xml:lang="en-US">Entity Interactive Data Current</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityFilerCategory" xlink:label="dei_EntityFilerCategory" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityFilerCategory" xlink:to="dei_EntityFilerCategory_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityFilerCategory_lbl" xml:lang="en-US">Entity Filer Category</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntitySmallBusiness" xlink:label="dei_EntitySmallBusiness" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntitySmallBusiness" xlink:to="dei_EntitySmallBusiness_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntitySmallBusiness_lbl" xml:lang="en-US">Entity Small Business</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityEmergingGrowthCompany" xlink:label="dei_EntityEmergingGrowthCompany" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityEmergingGrowthCompany" xlink:to="dei_EntityEmergingGrowthCompany_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityEmergingGrowthCompany_lbl" xml:lang="en-US">Entity Emerging Growth Company</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityExTransitionPeriod" xlink:label="dei_EntityExTransitionPeriod" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityExTransitionPeriod" xlink:to="dei_EntityExTransitionPeriod_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityExTransitionPeriod_lbl" xml:lang="en-US">Elected Not To Use the Extended Transition Period</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentAccountingStandard" xlink:label="dei_DocumentAccountingStandard" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentAccountingStandard" xlink:to="dei_DocumentAccountingStandard_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentAccountingStandard_lbl" xml:lang="en-US">Document Accounting Standard</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_OtherReportingStandardItemNumber" xlink:label="dei_OtherReportingStandardItemNumber" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_OtherReportingStandardItemNumber" xlink:to="dei_OtherReportingStandardItemNumber_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_OtherReportingStandardItemNumber_lbl" xml:lang="en-US">Other Reporting Standard Item Number</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityShellCompany" xlink:label="dei_EntityShellCompany" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityShellCompany" xlink:to="dei_EntityShellCompany_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityShellCompany_lbl" xml:lang="en-US">Entity Shell Company</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityPublicFloat" xlink:label="dei_EntityPublicFloat" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityPublicFloat" xlink:to="dei_EntityPublicFloat_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityPublicFloat_lbl" xml:lang="en-US">Entity Public Float</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityBankruptcyProceedingsReportingCurrent" xlink:label="dei_EntityBankruptcyProceedingsReportingCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityBankruptcyProceedingsReportingCurrent" xlink:to="dei_EntityBankruptcyProceedingsReportingCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityBankruptcyProceedingsReportingCurrent_lbl" xml:lang="en-US">Entity Bankruptcy Proceedings, Reporting Current</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="dei_EntityCommonStockSharesOutstanding" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCommonStockSharesOutstanding" xlink:to="dei_EntityCommonStockSharesOutstanding_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityCommonStockSharesOutstanding_lbl" xml:lang="en-US">Entity Common Stock, Shares Outstanding</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentsIncorporatedByReferenceTextBlock" xlink:label="dei_DocumentsIncorporatedByReferenceTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentsIncorporatedByReferenceTextBlock" xlink:to="dei_DocumentsIncorporatedByReferenceTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentsIncorporatedByReferenceTextBlock_lbl" xml:lang="en-US">Documents Incorporated by Reference [Text Block]</link:label>
    </link:labelLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.PRE
<SEQUENCE>6
<FILENAME>gnw-20190101_pre.xml
<DESCRIPTION>XBRL PRESENTATION FILE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="us-ascii" standalone="no"?>
<link:linkbase xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrli="http://www.xbrl.org/2003/instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
    <link:roleRef roleURI="http://globenewswire.com/role/Cover" xlink:href="gnw-20190101.xsd#Cover" xlink:type="simple" />
    <link:presentationLink xlink:type="extended" xlink:role="http://globenewswire.com/role/Cover" xlink:title="00000001 - Document - Cover">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CoverAbstract" xlink:label="loc_deiCoverAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentType" xlink:label="loc_deiDocumentType" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentType" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AmendmentFlag" xlink:label="loc_deiAmendmentFlag" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiAmendmentFlag" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AmendmentDescription" xlink:label="loc_deiAmendmentDescription" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiAmendmentDescription" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentRegistrationStatement" xlink:label="loc_deiDocumentRegistrationStatement" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentRegistrationStatement" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentAnnualReport" xlink:label="loc_deiDocumentAnnualReport" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentAnnualReport" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentQuarterlyReport" xlink:label="loc_deiDocumentQuarterlyReport" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentQuarterlyReport" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentTransitionReport" xlink:label="loc_deiDocumentTransitionReport" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentTransitionReport" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentShellCompanyReport" xlink:label="loc_deiDocumentShellCompanyReport" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentShellCompanyReport" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentShellCompanyEventDate" xlink:label="loc_deiDocumentShellCompanyEventDate" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentShellCompanyEventDate" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentPeriodStartDate" xlink:label="loc_deiDocumentPeriodStartDate" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentPeriodStartDate" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentPeriodEndDate" xlink:label="loc_deiDocumentPeriodEndDate" />
      <link:presentationArc order="100" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentPeriodEndDate" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="loc_deiDocumentFiscalPeriodFocus" />
      <link:presentationArc order="110" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentFiscalPeriodFocus" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFiscalYearFocus" xlink:label="loc_deiDocumentFiscalYearFocus" />
      <link:presentationArc order="120" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentFiscalYearFocus" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CurrentFiscalYearEndDate" xlink:label="loc_deiCurrentFiscalYearEndDate" />
      <link:presentationArc order="130" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiCurrentFiscalYearEndDate" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityFileNumber" xlink:label="loc_deiEntityFileNumber" />
      <link:presentationArc order="140" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityFileNumber" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityRegistrantName" xlink:label="loc_deiEntityRegistrantName" />
      <link:presentationArc order="150" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityRegistrantName" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCentralIndexKey" xlink:label="loc_deiEntityCentralIndexKey" />
      <link:presentationArc order="160" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityCentralIndexKey" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityPrimarySicNumber" xlink:label="loc_deiEntityPrimarySicNumber" />
      <link:presentationArc order="170" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityPrimarySicNumber" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityTaxIdentificationNumber" xlink:label="loc_deiEntityTaxIdentificationNumber" />
      <link:presentationArc order="180" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityTaxIdentificationNumber" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="loc_deiEntityIncorporationStateCountryCode" />
      <link:presentationArc order="190" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityIncorporationStateCountryCode" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressAddressLine1" xlink:label="loc_deiEntityAddressAddressLine1" />
      <link:presentationArc order="200" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityAddressAddressLine1" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressAddressLine2" xlink:label="loc_deiEntityAddressAddressLine2" />
      <link:presentationArc order="210" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityAddressAddressLine2" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressAddressLine3" xlink:label="loc_deiEntityAddressAddressLine3" />
      <link:presentationArc order="220" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityAddressAddressLine3" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressCityOrTown" xlink:label="loc_deiEntityAddressCityOrTown" />
      <link:presentationArc order="230" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityAddressCityOrTown" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressStateOrProvince" xlink:label="loc_deiEntityAddressStateOrProvince" />
      <link:presentationArc order="240" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityAddressStateOrProvince" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressCountry" xlink:label="loc_deiEntityAddressCountry" />
      <link:presentationArc order="250" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityAddressCountry" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressPostalZipCode" xlink:label="loc_deiEntityAddressPostalZipCode" />
      <link:presentationArc order="260" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityAddressPostalZipCode" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CountryRegion" xlink:label="loc_deiCountryRegion" />
      <link:presentationArc order="270" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiCountryRegion" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CityAreaCode" xlink:label="loc_deiCityAreaCode" />
      <link:presentationArc order="280" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiCityAreaCode" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LocalPhoneNumber" xlink:label="loc_deiLocalPhoneNumber" />
      <link:presentationArc order="290" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiLocalPhoneNumber" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_Extension" xlink:label="loc_deiExtension" />
      <link:presentationArc order="300" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiExtension" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_WrittenCommunications" xlink:label="loc_deiWrittenCommunications" />
      <link:presentationArc order="310" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiWrittenCommunications" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_SolicitingMaterial" xlink:label="loc_deiSolicitingMaterial" />
      <link:presentationArc order="320" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiSolicitingMaterial" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_PreCommencementTenderOffer" xlink:label="loc_deiPreCommencementTenderOffer" />
      <link:presentationArc order="330" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiPreCommencementTenderOffer" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_PreCommencementIssuerTenderOffer" xlink:label="loc_deiPreCommencementIssuerTenderOffer" />
      <link:presentationArc order="340" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiPreCommencementIssuerTenderOffer" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_Security12bTitle" xlink:label="loc_deiSecurity12bTitle" />
      <link:presentationArc order="350" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiSecurity12bTitle" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_NoTradingSymbolFlag" xlink:label="loc_deiNoTradingSymbolFlag" />
      <link:presentationArc order="360" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiNoTradingSymbolFlag" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_TradingSymbol" xlink:label="loc_deiTradingSymbol" />
      <link:presentationArc order="370" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiTradingSymbol" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_SecurityExchangeName" xlink:label="loc_deiSecurityExchangeName" />
      <link:presentationArc order="380" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiSecurityExchangeName" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_Security12gTitle" xlink:label="loc_deiSecurity12gTitle" />
      <link:presentationArc order="390" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiSecurity12gTitle" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_SecurityReportingObligation" xlink:label="loc_deiSecurityReportingObligation" />
      <link:presentationArc order="400" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiSecurityReportingObligation" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AnnualInformationForm" xlink:label="loc_deiAnnualInformationForm" />
      <link:presentationArc order="410" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiAnnualInformationForm" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AuditedAnnualFinancialStatements" xlink:label="loc_deiAuditedAnnualFinancialStatements" />
      <link:presentationArc order="420" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiAuditedAnnualFinancialStatements" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityWellKnownSeasonedIssuer" xlink:label="loc_deiEntityWellKnownSeasonedIssuer" />
      <link:presentationArc order="430" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityWellKnownSeasonedIssuer" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityVoluntaryFilers" xlink:label="loc_deiEntityVoluntaryFilers" />
      <link:presentationArc order="440" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityVoluntaryFilers" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCurrentReportingStatus" xlink:label="loc_deiEntityCurrentReportingStatus" />
      <link:presentationArc order="450" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityCurrentReportingStatus" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityInteractiveDataCurrent" xlink:label="loc_deiEntityInteractiveDataCurrent" />
      <link:presentationArc order="460" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityInteractiveDataCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityFilerCategory" xlink:label="loc_deiEntityFilerCategory" />
      <link:presentationArc order="470" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityFilerCategory" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntitySmallBusiness" xlink:label="loc_deiEntitySmallBusiness" />
      <link:presentationArc order="480" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntitySmallBusiness" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityEmergingGrowthCompany" xlink:label="loc_deiEntityEmergingGrowthCompany" />
      <link:presentationArc order="490" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityEmergingGrowthCompany" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityExTransitionPeriod" xlink:label="loc_deiEntityExTransitionPeriod" />
      <link:presentationArc order="500" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityExTransitionPeriod" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentAccountingStandard" xlink:label="loc_deiDocumentAccountingStandard" />
      <link:presentationArc order="510" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentAccountingStandard" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_OtherReportingStandardItemNumber" xlink:label="loc_deiOtherReportingStandardItemNumber" />
      <link:presentationArc order="520" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiOtherReportingStandardItemNumber" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityShellCompany" xlink:label="loc_deiEntityShellCompany" />
      <link:presentationArc order="530" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityShellCompany" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityPublicFloat" xlink:label="loc_deiEntityPublicFloat" />
      <link:presentationArc order="540" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityPublicFloat" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityBankruptcyProceedingsReportingCurrent" xlink:label="loc_deiEntityBankruptcyProceedingsReportingCurrent" />
      <link:presentationArc order="550" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityBankruptcyProceedingsReportingCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="loc_deiEntityCommonStockSharesOutstanding" />
      <link:presentationArc order="560" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityCommonStockSharesOutstanding" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentsIncorporatedByReferenceTextBlock" xlink:label="loc_deiDocumentsIncorporatedByReferenceTextBlock" />
      <link:presentationArc order="570" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentsIncorporatedByReferenceTextBlock" xlink:type="arc" />
    </link:presentationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>8
<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.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Cover<br></strong></div></th>
<th class="th"><div>Apr. 10, 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">8-K<span></span>
</td>
</tr>
<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">false<span></span>
</td>
</tr>
<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">Apr. 10,  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_EntityFileNumber', window );">Entity File Number</a></td>
<td class="text">001-11038<span></span>
</td>
</tr>
<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_EntityRegistrantName', window );">Entity Registrant Name</a></td>
<td class="text">NORTHERN TECHNOLOGIES INTERNATIONAL CORPORATION<span></span>
</td>
</tr>
<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">0000875582<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityTaxIdentificationNumber', window );">Entity Tax Identification Number</a></td>
<td class="text">41-0857886<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityIncorporationStateCountryCode', window );">Entity Incorporation, State or Country Code</a></td>
<td class="text">DE<span></span>
</td>
</tr>
<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_EntityAddressAddressLine1', window );">Entity Address, Address Line One</a></td>
<td class="text">4201 Woodland RoadP.O. Box 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_dei_EntityAddressCityOrTown', window );">Entity Address, City or Town</a></td>
<td class="text">Circle Pines<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressStateOrProvince', window );">Entity Address, State or Province</a></td>
<td class="text">MN<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressPostalZipCode', window );">Entity Address, Postal Zip Code</a></td>
<td class="text">55014<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_CityAreaCode', window );">City Area Code</a></td>
<td class="text">763<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LocalPhoneNumber', window );">Local Phone Number</a></td>
<td class="text">225-6600<span></span>
</td>
</tr>
<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_WrittenCommunications', window );">Written Communications</a></td>
<td class="text">false<span></span>
</td>
</tr>
<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_SolicitingMaterial', window );">Soliciting Material</a></td>
<td class="text">false<span></span>
</td>
</tr>
<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_PreCommencementTenderOffer', window );">Pre-commencement Tender Offer</a></td>
<td class="text">false<span></span>
</td>
</tr>
<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_PreCommencementIssuerTenderOffer', window );">Pre-commencement Issuer Tender Offer</a></td>
<td class="text">false<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_Security12bTitle', window );">Title of 12(b) Security</a></td>
<td class="text">Common stock, par value $0.02 per share<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_TradingSymbol', window );">Trading Symbol</a></td>
<td class="text">NTIC<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_SecurityExchangeName', window );">Security Exchange Name</a></td>
<td class="text">NASDAQ<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityEmergingGrowthCompany', window );">Entity Emerging Growth Company</a></td>
<td class="text">false<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_AmendmentFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_AmendmentFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CityAreaCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Area code of city</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CityAreaCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CoverAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Cover page.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CoverAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_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_EntityAddressAddressLine1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Address Line 1 such as Attn, Building Name, Street Name</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressAddressLine1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressCityOrTown">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the City or Town</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressCityOrTown</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressPostalZipCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Code for the postal or zip code</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressPostalZipCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressStateOrProvince">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the state or province.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressStateOrProvince</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:stateOrProvinceItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCentralIndexKey">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCentralIndexKey</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:centralIndexKeyItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityEmergingGrowthCompany">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate if registrant meets the emerging growth company criteria.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityEmergingGrowthCompany</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityFileNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityFileNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:fileNumberItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityIncorporationStateCountryCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Two-character EDGAR code representing the state or country of incorporation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityIncorporationStateCountryCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:edgarStateCountryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityRegistrantName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityRegistrantName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityTaxIdentificationNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityTaxIdentificationNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:employerIdItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LocalPhoneNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Local phone number for entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LocalPhoneNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_PreCommencementIssuerTenderOffer">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 Form 8-K filing is intended to satisfy the filing obligation of the registrant as pre-commencement communications pursuant to Rule 13e-4(c) under the Exchange Act.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 13e<br> -Subsection 4c<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_PreCommencementIssuerTenderOffer</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_PreCommencementTenderOffer">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 Form 8-K filing is intended to satisfy the filing obligation of the registrant as pre-commencement communications pursuant to Rule 14d-2(b) under the Exchange Act.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 14d<br> -Subsection 2b<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_PreCommencementTenderOffer</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_Security12bTitle">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Title of a 12(b) registered security.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_Security12bTitle</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:securityTitleItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_SecurityExchangeName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the Exchange on which a security is registered.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection d1-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_SecurityExchangeName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:edgarExchangeCodeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_SolicitingMaterial">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 Form 8-K filing is intended to satisfy the filing obligation of the registrant as soliciting material pursuant to Rule 14a-12 under the Exchange Act.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Section 14a<br> -Number 240<br> -Subsection 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;">dei_SolicitingMaterial</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_TradingSymbol">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Trading symbol of an instrument as listed on an exchange.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_TradingSymbol</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:tradingSymbolItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_WrittenCommunications">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 Form 8-K filing is intended to satisfy the filing obligation of the registrant as written communications pursuant to Rule 425 under the Securities Act.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Securities Act<br> -Number 230<br> -Section 425<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_WrittenCommunications</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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EXCEL
<SEQUENCE>9
<FILENAME>Financial_Report.xlsx
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 Financial_Report.xlsx
M4$L#!!0    (  Q BEI&QTU(E0   ,T    0    9&]C4')O<',O87!P+GAM
M;$W/30O", P&X+]2=K>9BAZD#D0]BIZ\SRYUA;8I;83Z[^T$/VYY><@;HBZ)
M(B:VF$7Q+N1M,S+'#4#6(_H^R\JABJ'D>ZXQW8&,L1H/I!\> \.B;=> A3$,
M.,SBM[#IU"Y&9W7/ED)WLCI1)L/B6#0ZL2<?J]P<"A#G>B4^BQ-+.9<K!?^+
M4\L54Y[FRF_\9 6_![H74$L#!!0    (  Q BEJ#XMJM[@   "L"   1
M9&]C4')O<',O8V]R92YX;6S-DL%.PS ,AE\%Y=XZS0:'J,MEB!-(2$P"<8L<
M;XMHVB@Q:O?VM&7KA. !.,;^\_FSY!JCQB[1<^HB)?:4;X;0M%ECW(@C<]0
M&8\4;"['1#LV]UT*EL=G.D"T^&$/!$K*.PC$UEFV, &+N!"%J1UJ3&2Y2V>\
MPP4?/U,SPQP"-12HY0Q568$PT\1X&IH:KH )QI1"_BZ06XAS]4_LW %Q3@[9
M+ZF^[\M^->?&'2IX>WI\F=<M?)O9MDCCK^PUGR)MQ&7RZVI[OWL01DEU6\AU
M4<E=I;246JW?)]<??E?AT#F_]__8^")H:OAU%^8+4$L#!!0    (  Q BEJ9
M7)PC$ 8  )PG   3    >&PO=&AE;64O=&AE;64Q+GAM;.U:6W/:.!1^[Z_0
M>&?V;0O&-H&VM!-S:7;;M)F$[4X?A1%8C6QY9)&$?[]'-A#+E@WMDDVZFSP$
M+.G[SD5'Y^@X>?/N+F+HAHB4\GA@V2_;UKNW+][@5S(D$4$P&:>O\, *I4Q>
MM5II ,,X?<D3$L/<@HL(2W@4R]9<X%L:+R/6ZK3;W5:$:6RA&$=D8'U>+&A
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
M9H=;SN!1L!? ]VLIS>? [FSS'R;Z_P)02P,$%     @ #$"*6I^@&_"Q @
MX@P   T   !X;"]S='EL97,N>&ULW5=M:]LP$/XK0C]@;F)JXI$8MD!AL(U"
M\V%?E5AV!'KQ9+ES^NNGLVPG:75EW8>QS:')W3VZNT=W)YFN6W>2_.'(N2.]
MDKK=T*-SS?LD:0]'KEC[SC1<>Z0R5C'G55LG;6,Y*UMP4C)9WMQDB6)"TV*M
M.W6G7$L.IM-N0V]H4JPKH\^6E :#7\H4)X],;NB62;&W8EC+E)"G8%Z"X6"D
ML<1Y*GQ#%V!IGP*\"!JP'.,HH8T%8Q(RA._]N/P9,&FM5X64,\$E#89BW3#G
MN-5W7AD6#\87$!GEW:GQ#&O+3HOE+3T[##\^R=[8DMLYS8).IF(M>05TK*B/
M\.M,DP#HG%%>* 6KC68#A\EC%'S8 Y?R 5KXK;J*W5<D].)3"6T@L-5)](1&
M,80)"L2_C!9B7X2]_:VPI!&/QGWL_&[TH'_OC./WEE>B'_2^FO-CT1=X=-8T
M\O1!BEHK'O;^RPF+-9O\R-%8\>2SP:0<O(%;2AZY=>)P:?EA6;/CO9NFJ:]P
MSLM_D/.?K7/--;=,7I+VH_\W5_DMC)/Q]%P<T:L#.EL)7(0;^A7N5WGF0/:=
MD$[H43N*LN3ZQ3GUX1W;^PO\*KY?7_**==+M9G!#S_(77HI.Y?.J>ZC+N.HL
M?X;[:)'-M[#/)73)>UYN1]76^T$D7O!9QP<<GB-WPQ-',)^ Q1' L#P8 \PG
M>&%Y_J?]K-#]! SCMHHB*]1GA?H$KQBR'3Y8GKA/[I_X3O,\3;,,J^AV&V6P
MQ>J69? 7CX9Q P\L#V1Z6ZWQ;N,3\OH<8#U];4*PG>*3B.T4KS4@\;J!1Y['
MNXWE 0^L"]CL0/YX'IBIN$^:0E<Q;M@)QI$\QQ"8Q?B,9AE2G0P^\?Y@IR1-
M\SR. !9GD*88 J<11S &P %#TG1X#SY['R73>RHY_U=3_ 102P,$%     @
M#$"*6I>*NQS     $P(   L   !?<F5L<R\N<F5L<YV2N6[#, Q ?\70GC '
MT"&(,V7Q%@3Y 5:B#]@2!8I%G;^OVJ5QD L9>3T\$MP>:4#M.*2VBZD8_1!2
M:5K5N %(MB6/:<Z10J[4+!XUA]) 1-MC0[!:+#Y +AEFM[UD%J=SI%>(7->=
MI3W;+T]!;X"O.DQQ0FE(2S,.\,W2?S+W\PPU1>5*(Y5;&GC3Y?YVX$G1H2)8
M%II%R=.B':5_'<?VD-/IKV,BM'I;Z/EQ:%0*CMQC)8QQ8K3^-8+)#^Q^ %!+
M P04    "  ,0(I:JL0B%C,!   B @  #P   'AL+W=O<FMB;V]K+GAM;(U1
MT6[", S\E2H?L!:T(0U17D#;D*8-C8GWT+K4(HDKQX6-KY_;JAK27O:4W-FZ
MW%T6%^+3@>B4?'D78FYJD6:>IK&HP=MX1PT$G53$WHI"/J:Q8;!EK '$NW2:
M9;/46PQFN1BUMIS> A(H!"DHV1%[A$O\G7<P.6/$ SJ4[]ST=P<F\1C0XQ7*
MW&0FB35=7HCQ2D&LVQ5,SN5F,@SVP(+%'WK7F?RTA]@S8@\?5HWD9I:I8(4<
MI=_H]:UZ/(,N#Z@5>D(GP&LK\,S4-AB.G8RF2&]B]#V,YU#BG/]3(U45%K"F
MHO409.B1P74&0ZRQB28)UD-N5G0&[O+H YMRR"9JZJ8IGJ,.>%,.]D9/)508
MH'Q3F:B\]E-L.>F.7F=Z_S!YU!Y:YU;*O8=7LN48<?R>Y0]02P,$%     @
M#$"*6B0>FZ*M    ^ $  !H   !X;"]?<F5L<R]W;W)K8F]O:RYX;6PN<F5L
M<[61/0Z#, R%KQ+E #50J4,%3%U8*RX0!?,C$A+%K@JW+X4!D#IT8;*>+7_O
MR4Z?:!1W;J"V\R1&:P;*9,OL[P"D6[2*+L[C,$]J%ZSB688&O-*]:A"2*+I!
MV#-DGNZ9HIP\_D-T==UI?#C]LCCP#S"\7>BI160I2A4:Y$S":+8VP5+BRTR6
MHJ@R&8HJEG!:(.+)(&UI5GVP3TZTYWD7-_=%KLWC":[?#'!X=/X!4$L#!!0
M   (  Q BEIED'F2&0$  ,\#   3    6T-O;G1E;G1?5'EP97-=+GAM;*V3
M34[#,!"%KQ)E6R4N+%B@IAM@"UUP 6-/&JO^DV=:TMLS3MI*H!(5A4VL>-Z\
MSYZ7K-Z/$;#HG?78E!U1?!0"50=.8ATB>*ZT(3E)_)JV(DJUDUL0]\OE@U#!
M$WBJ*'N4Z]4SM')OJ7CI>1M-\$V9P&)9/(W"S&I*&:,U2A+7Q<'K'Y3J1*BY
M<]!@9R(N6%"*JX1<^1UPZGL[0$I&0[&1B5ZE8Y7HK4 Z6L!ZVN+*&4/;&@4Z
MJ+WCEAIC JFQ R!GZ]%T,4TFGC",S[O9_,%F"LC*30H1.;$$?\>=(\G=560C
M2&2FKW@ALO7L^T%.6X.^D<WC_0QI-^2!8ECFS_A[QA?_&\[Q$<+NOS^QO-9.
M&G_FB^$_7G\!4$L! A0#%     @ #$"*6D;'34B5    S0   !
M     ( !     &1O8U!R;W!S+V%P<"YX;6Q02P$"% ,4    "  ,0(I:@^+:
MK>X    K @  $0              @ '#    9&]C4')O<',O8V]R92YX;6Q0
M2P$"% ,4    "  ,0(I:F5R<(Q &  "<)P  $P              @ '@ 0
M>&PO=&AE;64O=&AE;64Q+GAM;%!+ 0(4 Q0    (  Q BEJ1!M/[: 0  *00
M   8              " @2$(  !X;"]W;W)K<VAE971S+W-H965T,2YX;6Q0
M2P$"% ,4    "  ,0(I:GZ ;\+$"  #B#   #0              @ &_#
M>&PO<W1Y;&5S+GAM;%!+ 0(4 Q0    (  Q BEJ7BKL<P    !,"   +
M          "  9L/  !?<F5L<R\N<F5L<U!+ 0(4 Q0    (  Q BEJJQ"(6
M,P$  "("   /              "  800  !X;"]W;W)K8F]O:RYX;6Q02P$"
M% ,4    "  ,0(I:)!Z;HJT   #X 0  &@              @ 'D$0  >&PO
M7W)E;',O=V]R:V)O;VLN>&UL+G)E;'-02P$"% ,4    "  ,0(I:99!YDAD!
M  #/ P  $P              @ ')$@  6T-O;G1E;G1?5'EP97-=+GAM;%!+
4!08     "0 ) #X"   3%      !

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>10
<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>11
<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>13
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.25.1</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>1</ContextCount>
  <ElementCount>22</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>false</FootnotesReported>
  <SegmentCount>0</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>3</UnitCount>
  <MyReports>
    <Report instance="f8k_040825.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>00000001 - Document - Cover</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://globenewswire.com/role/Cover</Role>
      <ShortName>Cover</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</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="8-K" isOnlyDei="true" isUsgaap="true" original="f8k_040825.htm">f8k_040825.htm</File>
    <File>gnw-20190101.xsd</File>
    <File>gnw-20190101_def.xml</File>
    <File>gnw-20190101_lab.xml</File>
    <File>gnw-20190101_pre.xml</File>
  </InputFiles>
  <SupplementalFiles/>
  <BaseTaxonomies>
    <BaseTaxonomy items="22">http://xbrl.sec.gov/dei/2023</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>false</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>JSON
<SEQUENCE>15
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "version": "2.2",
 "instance": {
  "f8k_040825.htm": {
   "nsprefix": "gnw",
   "nsuri": "http://globenewswire.com/20190101",
   "dts": {
    "inline": {
     "local": [
      "f8k_040825.htm"
     ]
    },
    "schema": {
     "local": [
      "gnw-20190101.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/dtr/type/nonNumeric-2009-12-16.xsd",
      "http://www.xbrl.org/dtr/type/numeric-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/net-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/2022-03-31/types.xsd",
      "https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd",
      "https://xbrl.fasb.org/srt/2023/elts/srt-roles-2023.xsd",
      "https://xbrl.fasb.org/srt/2023/elts/srt-types-2023.xsd",
      "https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd",
      "https://xbrl.fasb.org/us-gaap/2023/elts/us-roles-2023.xsd",
      "https://xbrl.fasb.org/us-gaap/2023/elts/us-types-2023.xsd",
      "https://xbrl.sec.gov/country/2023/country-2023.xsd",
      "https://xbrl.sec.gov/dei/2023/dei-2023.xsd"
     ]
    },
    "definitionLink": {
     "local": [
      "gnw-20190101_def.xml"
     ]
    },
    "labelLink": {
     "local": [
      "gnw-20190101_lab.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "gnw-20190101_pre.xml"
     ]
    }
   },
   "keyStandard": 22,
   "keyCustom": 0,
   "axisStandard": 0,
   "axisCustom": 0,
   "memberStandard": 0,
   "memberCustom": 0,
   "hidden": {
    "total": 2,
    "http://xbrl.sec.gov/dei/2023": 2
   },
   "contextCount": 1,
   "entityCount": 1,
   "segmentCount": 0,
   "elementCount": 59,
   "unitCount": 3,
   "baseTaxonomies": {
    "http://xbrl.sec.gov/dei/2023": 22
   },
   "report": {
    "R1": {
     "role": "http://globenewswire.com/role/Cover",
     "longName": "00000001 - Document - Cover",
     "shortName": "Cover",
     "isDefault": "true",
     "groupType": "document",
     "subGroupType": "",
     "menuCat": "Cover",
     "order": "1",
     "firstAnchor": {
      "contextRef": "Form8K",
      "name": "dei:DocumentType",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "p",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "f8k_040825.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "Form8K",
      "name": "dei:DocumentType",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "p",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "f8k_040825.htm",
      "first": true,
      "unique": true
     }
    }
   },
   "tag": {
    "dei_AmendmentDescription": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "AmendmentDescription",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Amendment Description",
        "documentation": "Description of changes contained within amended document."
       }
      }
     },
     "auth_ref": []
    },
    "dei_AmendmentFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "AmendmentFlag",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Amendment Flag",
        "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission."
       }
      }
     },
     "auth_ref": []
    },
    "dei_AnnualInformationForm": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "AnnualInformationForm",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Annual Information Form",
        "documentation": "Boolean flag with value true on a form if it is an annual report containing an annual information form."
       }
      }
     },
     "auth_ref": [
      "r14"
     ]
    },
    "dei_AuditedAnnualFinancialStatements": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "AuditedAnnualFinancialStatements",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Audited Annual Financial Statements",
        "documentation": "Boolean flag with value true on a form if it is an annual report containing audited financial statements."
       }
      }
     },
     "auth_ref": [
      "r14"
     ]
    },
    "dei_CityAreaCode": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "CityAreaCode",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "City Area Code",
        "documentation": "Area code of city"
       }
      }
     },
     "auth_ref": []
    },
    "dei_CountryRegion": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "CountryRegion",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Country Region",
        "documentation": "Region code of country"
       }
      }
     },
     "auth_ref": []
    },
    "dei_CoverAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "CoverAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Cover [Abstract]",
        "documentation": "Cover page."
       }
      }
     },
     "auth_ref": []
    },
    "dei_CurrentFiscalYearEndDate": {
     "xbrltype": "gMonthDayItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "CurrentFiscalYearEndDate",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Current Fiscal Year End Date",
        "documentation": "End date of current fiscal year in the format --MM-DD."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentAccountingStandard": {
     "xbrltype": "accountingStandardItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentAccountingStandard",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Accounting Standard",
        "documentation": "The basis of accounting the registrant has used to prepare the financial statements included in this filing This can either be 'U.S. GAAP', 'International Financial Reporting Standards', or 'Other'."
       }
      }
     },
     "auth_ref": [
      "r13"
     ]
    },
    "dei_DocumentAnnualReport": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentAnnualReport",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Annual Report",
        "documentation": "Boolean flag that is true only for a form used as an annual report."
       }
      }
     },
     "auth_ref": [
      "r11",
      "r13",
      "r14"
     ]
    },
    "dei_DocumentFiscalPeriodFocus": {
     "xbrltype": "fiscalPeriodItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentFiscalPeriodFocus",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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/2023",
     "localname": "DocumentFiscalYearFocus",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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/2023",
     "localname": "DocumentPeriodEndDate",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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_DocumentPeriodStartDate": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentPeriodStartDate",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Period Start Date",
        "documentation": "The start date of the period covered in the document, in YYYY-MM-DD format."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentQuarterlyReport": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentQuarterlyReport",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Quarterly Report",
        "documentation": "Boolean flag that is true only for a form used as an quarterly report."
       }
      }
     },
     "auth_ref": [
      "r12"
     ]
    },
    "dei_DocumentRegistrationStatement": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentRegistrationStatement",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Registration Statement",
        "documentation": "Boolean flag that is true only for a form used as a registration statement."
       }
      }
     },
     "auth_ref": [
      "r0"
     ]
    },
    "dei_DocumentShellCompanyEventDate": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentShellCompanyEventDate",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Shell Company Event Date",
        "documentation": "Date of event requiring a shell company report."
       }
      }
     },
     "auth_ref": [
      "r13"
     ]
    },
    "dei_DocumentShellCompanyReport": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentShellCompanyReport",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Shell Company Report",
        "documentation": "Boolean flag that is true for a Shell Company Report pursuant to section 13 or 15(d) of the Exchange Act."
       }
      }
     },
     "auth_ref": [
      "r13"
     ]
    },
    "dei_DocumentTransitionReport": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentTransitionReport",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Transition Report",
        "documentation": "Boolean flag that is true only for a form used as a transition report."
       }
      }
     },
     "auth_ref": [
      "r15"
     ]
    },
    "dei_DocumentType": {
     "xbrltype": "submissionTypeItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentType",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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": []
    },
    "dei_DocumentsIncorporatedByReferenceTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentsIncorporatedByReferenceTextBlock",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Documents Incorporated by Reference [Text Block]",
        "documentation": "Documents incorporated by reference."
       }
      }
     },
     "auth_ref": [
      "r3"
     ]
    },
    "dei_EntityAddressAddressLine1": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityAddressAddressLine1",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, Address Line One",
        "documentation": "Address Line 1 such as Attn, Building Name, Street Name"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressAddressLine2": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityAddressAddressLine2",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, Address Line Two",
        "documentation": "Address Line 2 such as Street or Suite number"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressAddressLine3": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityAddressAddressLine3",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, Address Line Three",
        "documentation": "Address Line 3 such as an Office Park"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressCityOrTown": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityAddressCityOrTown",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, City or Town",
        "documentation": "Name of the City or Town"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressCountry": {
     "xbrltype": "countryCodeItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityAddressCountry",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, Country",
        "documentation": "ISO 3166-1 alpha-2 country code."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressPostalZipCode": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityAddressPostalZipCode",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, Postal Zip Code",
        "documentation": "Code for the postal or zip code"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressStateOrProvince": {
     "xbrltype": "stateOrProvinceItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityAddressStateOrProvince",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, State or Province",
        "documentation": "Name of the state or province."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityBankruptcyProceedingsReportingCurrent": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityBankruptcyProceedingsReportingCurrent",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Bankruptcy Proceedings, Reporting Current",
        "documentation": "For registrants involved in bankruptcy proceedings during the preceding five years, the value Yes indicates that the registrant has filed all documents and reports required to be filed by Section 12, 13 or 15(d) of the Securities Exchange Act of 1934 subsequent to the distribution of securities under a plan confirmed by a court; the value No indicates the registrant has not.  Registrants not involved in bankruptcy proceedings during the preceding five years should not report this element."
       }
      }
     },
     "auth_ref": [
      "r6"
     ]
    },
    "dei_EntityCentralIndexKey": {
     "xbrltype": "centralIndexKeyItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityCentralIndexKey",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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": [
      "r2"
     ]
    },
    "dei_EntityCommonStockSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityCommonStockSharesOutstanding",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Common Stock, Shares Outstanding",
        "documentation": "Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityCurrentReportingStatus": {
     "xbrltype": "yesNoItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityCurrentReportingStatus",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Current Reporting Status",
        "documentation": "Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityEmergingGrowthCompany": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityEmergingGrowthCompany",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Emerging Growth Company",
        "documentation": "Indicate if registrant meets the emerging growth company criteria."
       }
      }
     },
     "auth_ref": [
      "r2"
     ]
    },
    "dei_EntityExTransitionPeriod": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityExTransitionPeriod",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Elected Not To Use the Extended Transition Period",
        "documentation": "Indicate if an emerging growth company has elected not to use the extended transition period for complying with any new or revised financial accounting standards."
       }
      }
     },
     "auth_ref": [
      "r19"
     ]
    },
    "dei_EntityFileNumber": {
     "xbrltype": "fileNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityFileNumber",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity File Number",
        "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityFilerCategory": {
     "xbrltype": "filerCategoryItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityFilerCategory",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Filer Category",
        "documentation": "Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure."
       }
      }
     },
     "auth_ref": [
      "r2"
     ]
    },
    "dei_EntityIncorporationStateCountryCode": {
     "xbrltype": "edgarStateCountryItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityIncorporationStateCountryCode",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Incorporation, State or Country Code",
        "documentation": "Two-character EDGAR code representing the state or country of incorporation."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityInteractiveDataCurrent": {
     "xbrltype": "yesNoItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityInteractiveDataCurrent",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Interactive Data Current",
        "documentation": "Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files)."
       }
      }
     },
     "auth_ref": [
      "r16"
     ]
    },
    "dei_EntityPrimarySicNumber": {
     "xbrltype": "sicNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityPrimarySicNumber",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Primary SIC Number",
        "documentation": "Primary Standard Industrial Classification (SIC) Number for the Entity."
       }
      }
     },
     "auth_ref": [
      "r14"
     ]
    },
    "dei_EntityPublicFloat": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityPublicFloat",
     "crdr": "credit",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Public Float",
        "documentation": "The aggregate market value of the voting and non-voting common equity held by non-affiliates computed by reference to the price at which the common equity was last sold, or the average bid and asked price of such common equity, as of the last business day of the registrant's most recently completed second fiscal quarter."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityRegistrantName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityRegistrantName",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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": [
      "r2"
     ]
    },
    "dei_EntityShellCompany": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityShellCompany",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Shell Company",
        "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act."
       }
      }
     },
     "auth_ref": [
      "r2"
     ]
    },
    "dei_EntitySmallBusiness": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntitySmallBusiness",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Small Business",
        "documentation": "Indicates that the company is a Smaller Reporting Company (SRC)."
       }
      }
     },
     "auth_ref": [
      "r2"
     ]
    },
    "dei_EntityTaxIdentificationNumber": {
     "xbrltype": "employerIdItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityTaxIdentificationNumber",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Tax Identification Number",
        "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS."
       }
      }
     },
     "auth_ref": [
      "r2"
     ]
    },
    "dei_EntityVoluntaryFilers": {
     "xbrltype": "yesNoItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityVoluntaryFilers",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Voluntary Filers",
        "documentation": "Indicate 'Yes' or 'No' if the registrant is not required to file reports pursuant to Section 13 or Section 15(d) of the Act."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityWellKnownSeasonedIssuer": {
     "xbrltype": "yesNoItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityWellKnownSeasonedIssuer",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Well-known Seasoned Issuer",
        "documentation": "Indicate 'Yes' or 'No' if the registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act. Is used on Form Type: 10-K, 10-Q, 8-K, 20-F, 6-K, 10-K/A, 10-Q/A, 20-F/A, 6-K/A, N-CSR, N-Q, N-1A."
       }
      }
     },
     "auth_ref": [
      "r17"
     ]
    },
    "dei_Extension": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "Extension",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Extension",
        "documentation": "Extension number for local phone number."
       }
      }
     },
     "auth_ref": []
    },
    "dei_LocalPhoneNumber": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "LocalPhoneNumber",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Local Phone Number",
        "documentation": "Local phone number for entity."
       }
      }
     },
     "auth_ref": []
    },
    "dei_NoTradingSymbolFlag": {
     "xbrltype": "trueItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "NoTradingSymbolFlag",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "No Trading Symbol Flag",
        "documentation": "Boolean flag that is true only for a security having no trading symbol."
       }
      }
     },
     "auth_ref": []
    },
    "dei_OtherReportingStandardItemNumber": {
     "xbrltype": "otherReportingStandardItemNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "OtherReportingStandardItemNumber",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Reporting Standard Item Number",
        "documentation": "\"Item 17\" or \"Item 18\" specified when the basis of accounting is neither US GAAP nor IFRS."
       }
      }
     },
     "auth_ref": [
      "r13"
     ]
    },
    "dei_PreCommencementIssuerTenderOffer": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "PreCommencementIssuerTenderOffer",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Pre-commencement Issuer Tender Offer",
        "documentation": "Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as pre-commencement communications pursuant to Rule 13e-4(c) under the Exchange Act."
       }
      }
     },
     "auth_ref": [
      "r7"
     ]
    },
    "dei_PreCommencementTenderOffer": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "PreCommencementTenderOffer",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Pre-commencement Tender Offer",
        "documentation": "Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as pre-commencement communications pursuant to Rule 14d-2(b) under the Exchange Act."
       }
      }
     },
     "auth_ref": [
      "r8"
     ]
    },
    "dei_Security12bTitle": {
     "xbrltype": "securityTitleItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "Security12bTitle",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Title of 12(b) Security",
        "documentation": "Title of a 12(b) registered security."
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "dei_Security12gTitle": {
     "xbrltype": "securityTitleItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "Security12gTitle",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Title of 12(g) Security",
        "documentation": "Title of a 12(g) registered security."
       }
      }
     },
     "auth_ref": [
      "r5"
     ]
    },
    "dei_SecurityExchangeName": {
     "xbrltype": "edgarExchangeCodeItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "SecurityExchangeName",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Security Exchange Name",
        "documentation": "Name of the Exchange on which a security is registered."
       }
      }
     },
     "auth_ref": [
      "r4"
     ]
    },
    "dei_SecurityReportingObligation": {
     "xbrltype": "securityReportingObligationItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "SecurityReportingObligation",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Security Reporting Obligation",
        "documentation": "15(d), indicating whether the security has a reporting obligation under that section of the Exchange Act."
       }
      }
     },
     "auth_ref": [
      "r9"
     ]
    },
    "dei_SolicitingMaterial": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "SolicitingMaterial",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Soliciting Material",
        "documentation": "Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as soliciting material pursuant to Rule 14a-12 under the Exchange Act."
       }
      }
     },
     "auth_ref": [
      "r10"
     ]
    },
    "dei_TradingSymbol": {
     "xbrltype": "tradingSymbolItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "TradingSymbol",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Symbol",
        "documentation": "Trading symbol of an instrument as listed on an exchange."
       }
      }
     },
     "auth_ref": []
    },
    "dei_WrittenCommunications": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "WrittenCommunications",
     "presentation": [
      "http://globenewswire.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Written Communications",
        "documentation": "Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as written communications pursuant to Rule 425 under the Securities Act."
       }
      }
     },
     "auth_ref": [
      "r18"
     ]
    }
   }
  }
 },
 "std_ref": {
  "r0": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12"
  },
  "r1": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b"
  },
  "r2": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b-2"
  },
  "r3": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b-23"
  },
  "r4": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "d1-1"
  },
  "r5": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "g"
  },
  "r6": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12, 13, 15d"
  },
  "r7": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "13e",
   "Subsection": "4c"
  },
  "r8": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "14d",
   "Subsection": "2b"
  },
  "r9": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "15",
   "Subsection": "d"
  },
  "r10": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Section": "14a",
   "Number": "240",
   "Subsection": "12"
  },
  "r11": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 10-K",
   "Number": "249",
   "Section": "310"
  },
  "r12": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 10-Q",
   "Number": "240",
   "Section": "308",
   "Subsection": "a"
  },
  "r13": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Number": "249",
   "Section": "220",
   "Subsection": "f"
  },
  "r14": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Number": "249",
   "Section": "240",
   "Subsection": "f"
  },
  "r15": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Forms 10-K, 10-Q, 20-F",
   "Number": "240",
   "Section": "13",
   "Subsection": "a-1"
  },
  "r16": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-T",
   "Number": "232",
   "Section": "405"
  },
  "r17": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "405"
  },
  "r18": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "425"
  },
  "r19": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "7A",
   "Section": "B",
   "Subsection": "2"
  }
 }
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>16
<FILENAME>0001171843-25-002129-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0001171843-25-002129-xbrl.zip
M4$L#!!0    (  Q BEKV\%X_:B\  !.; @ +    97AH7SDY,2YH=&WM??MV
MVDK2[Q.<=^C)9,]RUFK;N@**L[,6L4G"=QS( /[VS/E/AL9H;R$QNMCQ//VI
MZI9 7 TV%PEZUMH3#%)W==6OJJN[JZL^_>VF>=WY]\\:^=[Y<4M^WGVYK5^3
M=^>7EW_HUY>7-YT;\8-QH9!.8'NA$SF^9[N7E[7&N\^?!M'0):[M/?S^CGGG
M=VW\BMF]SY\B)W+9YUKOP0Z^.J[C/7RZ%%]]&K+()EW?BY@7_?XN8K^B2VSE
MBG0'=A"RZ/<GQ^OY3^&YJIG:.Y*\X-E#]ON[;[5&K57M-%OO)BW\:',"*Q>*
M<E$N*>J%6E$L U^\%*3<^[UG<O_0]5T_^/W=W_O\?T#HB(31L\L$#>>VZSQX
M'TG@/ RB*_@UC +?>_A<^]?W^I=ZAUC6A?KI,OGRT^5HR>M=((D%^'X?Z$N?
MP,_GH?-?]I&HQBC;?,,/H@$+/-)AW8$'%#XX+"1U;,2S!:?)M1^,_(#_15H,
M/D8A^>IXMM=UX-<6"V,7ONG[ 6DSX$J/_#.V V@ '@J[\(2F:&:&="1FK1&,
MWY@:]>?_0^!%_O#O[US6C]Y]_E%O-&K5G\W;>IN2ZBAP7$)4A?*."3G[=MO\
M4B.-VA_M/^JMV@=R?DXV'?99H]J^J?[S(VETZM<?*+&)"Z(%5)$>>V2N/X+1
M^GW 1!#X(;[@> /G'J *3XP"OQ=W@4,VL"9DP:/392$T$9(GYKKX[[WCG]_;
M(>OQ1^"O'GL([)Y][S(R\MWG(;0>L-#QH(/AR(^]'KP?^3W[&;Y&><";#HI@
M+)0@(Q08*'3+!?.?1#! :G\BFPMD+ &N?FY//Y9Y)M,VTH@#MOGH!H!7%S$;
MPIB[;MQCY.S)B0;D(?"?X!]X##@+'+'3YM+6GYD=G/N/+#C'3P08X(0?/B:T
MQ"Z)GD< C1Z\!%APG<_7OA?ZKM.S<;@> W#;+C3=8]V <>95+LS?@"WDO6I1
MI:Q115$^7<*+^/+_J[7NVIU__%TM&U= :"\&3.%@%K6C7Y23=C1JEE:TXSN"
M&P\@PT4-:1.*J&E84PTU["@.S@%^25L)2A:VHZH7%=&.0:V2,MT. ))<#T Z
MF5=!$F.>J.)-G99U<^K-;P#5$/OM.Q&'HTU JJA^B(]Q8S1#B&$H0DX 2\<#
MD4/+NGE1^FW<Z/_@]^01&HD#EH$)4.0/69;)XS&IM&2I4Y0UQZ^Q7R/FA5,C
MTBX,\5Z%5K0%O @ PP\>V+H>-JT:_!%XG_BH\6-"8H:-H&[ "\P9\4';'JD-
M1Z[_S!C8-33OJ,O7 >LY$3FKM:X_D)$-ZNA%DSZ!3TF;=@28NH\CKK?0."?G
M"1C[WM -I()R_;6AN63@965ZX)G&T*+T'#=&L(<P,:UJ7KE0C)FVE0NU/&[V
MV@X'*.A'IP<_WS]GY&)W(^<1[!2PF#>E4]7B0)V8#N<7&8+)'H2$>?C^5W8?
M@ H_ [QI8MNQG\O8%4;D'W^O:)IRA>3A1[5\%2;VYSQ5?>@>FA^"04%(0.N@
MC=Q.8(>)J 5J0 8PXS^C</ WG%!Q>D;;29 IW3@(0!SN,^G;77B%?KH/R.?$
M%&$3*%U ),SMW@/'$;F[:%\0Z \L%2HO4N8/G2Y:6J?K(."%Q;1#G :2SOTX
MR)H-;@,SVG\? [TL#+EAA^^PA<@9(@$X+; @LJ'G69WW@QX+P@MRP\*1$S%\
M*QP/:3)6BH.]9ZX#4TTZ;M _5 84D@UCO,=)@2SH HE9:K-28Y&=(@:VVT^Y
MG1AL-,^42U6]@G><'OEV07[:P(GN7^3VV>L.*/F)\U,/R<;&KVM-; ,A,)E<
M$EQ4N>P\^]%YL/F8P9KTGL&] A$\N/X]=,B\1P=F?-0SF@XX]IYLF"L$*K@X
M .]#)\*'$/$]X$_RNPO.PCG ;$@>;3=F%Z09HRZ%76<$CB#.LB-0!KL[P/<
MA/8#OM4%):$9X$1LB-,_.!//Q.[]"9+GTH2F$A3#]ST'5<I+54Y1N=H*=67]
M/D/E I'A=(@O>N#F+'A;0 ;<%C\ 3?RO\"KN(Q KS@AH@; ]K@L]H=XC7[C!
M).8F.&1@[D@_YC8WF7?]$3H&L2=T.V%95OCX+W<G0F%11JX-0^QFL7Q!_I@
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
MNP]B.W@F6H423=%,/L%4XP=HE>@J_\ZX6C+Y$(L:986:2IG_ G^52M2J*)0
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
MHDI.9IDMJ.0.%&NT_VGPQG'CB/5.2+0'2CHKE?+MYE0&<195<C)C9T$E=Z#
M:1GL)W<LCF@<F\'YCUK]V_=.[894_[?6JGZK36W,M4]!!CDF[5A8?'B85]OM
MNQ^ \N9=I]VI-F[JC6]RU_GX0'$LXSC^+>H<7#&QJ%%6J*G(E5ZA9:B5J6G)
M;>M"R[!L4$67>V6%EB'J845N91^UD,MX)U.7$V:A9:CIM"1K4A9;AB;>#),;
MW866H6I253N,'FZV>?+I/B"?KZOM[^2F_K_UFUKCIDUN:M>WU5;M9BZ8[X3.
M*^3*44I.2F[/I[MRE2@E]]JI;KQ[JY9>%31\&=GW+OM,/HT^?PJCP/<>Q-SX
MZ3+]ZW+TF61_;C1;6#NI03JUZ^^-YFWS6[W6%FDS&M5.O=FHWL+LV?K9;/&_
M2+5Q0]IW7]KUFWJU5<<#N*E^DC]:M>MFX[I^6Q<O-;^2;]7JSS1!!__\HU9M
MW[66-7!VUZC>W=0[M1L*Q)#.]^9=&[IN4U+[UW7M9T=,Y9P:G-^3OWXT[QJ=
M]H>YT1+.NM_?_1F'D=-_?O>Y,V#$[G;](3#[&21,1@$+0Q(PE]DA S%XD>UX
M(>D"[^$#\7Q/4-UW/-OK.K9+AO!D#&]1XGA=-T:<$+N'/; >\5B$7_M#Z":*
M N<^YH(AD2\N&-A>;_V'1RP@/;&<)^' #A@E3P.G.R#P$2B+"("C&[LV_NX'
M?"C,PS^ <!QDT .2&7ERH@'_._8B,63HU!FY+"0/S&.![;K/^#L;)>]&P*0[
MS\&_VA&T'I(SY,&'"P+L"]DJIG#2PG@$K0^!%OC%\?I^,+0CQ_?XZ)$V4"[^
M-PP4^UK0S-18HEFAI>**!G;$>\PP OM8R0FD_$(P. ZAJY6C":<',_[![Z-T
M^,BP8>STGKD.>X3?(LZD\:-]N^NX#O*1^/".+620>9D/+'!"'W#7#T##X4?'
M[R%WDD_8?#)\_#;]>/^,C4=^@"WZ<41&?@1TX@AZ3K_/ @;- Y9M&&</G\:A
M!JP;!_@&);$7AS$\#-@!*07L/S&\3;J M ?.EP@9S9F:()*7;RE?H;X\ +L#
M2D#9?.S]/@X=#S0I8:SMAGZ6(2 F%&(B%P$&8.$:6@;O^(].#S[ (/KQ-)Z
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
M*_<6S/TQ%2OH+X]/45C^QF]X@(DR6]L?ZKIQ0M/:TA 0$EHU+!5  C)EOGA
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
M6XU-.\*0A\G[W!CB6@V&_P%02P,$%     @ #$"*6J_O:H%1"   AV0  !0
M  !G;G<M,C Q.3 Q,#%?9&5F+GAM;-5=76_CN!5]+]#_8+C/CN)DI]L$DRX\
MGJ0P=F;BQMENVY> EFB9"$4:)!7;_[ZD/AS)XI7D;<)(>4AL^9 \]QR*XI5(
MY_,ONX@.7K"0A+.;X?CL?#C S.<!8>'-\+?%:+*8SF;#@52(!8ARAF^&C ]_
M^?N?__29$O9\;7XMD<0#70^3USM);H9KI3;7GK?=;L^VEV=<A-[%^?G8^_?W
M;PM_C2,T(LS4Y^-A7LK48BLWOKJZ\I)/<V@%N5L*FK=QZ>5T#C7K3P-U*% $
M?_+2#XM04E-U@;0DUS*)Y!OWD4J4:V0T !'FW2B'C<RAT?AB=#D^V\E@J(4>
MZ)]4;,$I?L"K@?G[V\/LT&I(^1(SO)5;(O"9SR//(+PIU\9JNDG9M<"KFV'(
MMKJ%\=7Y^#RI_R\EC-IOM+^21!NJP_1*;2/AY\W;P,5&@$ASP4V(GY+&U[H*
MX<=+/ I(A)GI@\-!UE QOD,MA"E/0[T,XUDK>'_>A\9& 8\0.9%TM;0#QDE+
MHPA'2V/W273+1=^?*Z+T-(9)@??GQ;B:G$HM+^.T3^(5BJGZPYTR+U[FK \3
M1LQ@]TV_+?'&.X59@(.<N:GPI+%)$65*G*<_X\%H\)7[L2:D],L4F7')V5#N
MERA0,Q!S4=5.YD&OD%PFD<=R%"*TT2I>7'J8*ID?&9DCB9;9@:>%0@H;&CID
M/-,O9=X 14M,DV:?,K -ZWTLZT>T?.U.-8PSW#';5\<G(N>==9>6YV3:1Z]]
MSI3N([<T:4WW<QR:%SFSE>!1HY29;+PV@J*VFLAPP$6 A9[6G+]RH5SBX&:H
M1&P)V;%!4XJDO%\M%/>?)SO2IG=5B[RI;=8+:I--9?4!BZ!8+6Y]E"]%BE^S
M2S-DB W[IDY49PE--H *\T;FD!47Y_WTXFEL(?Y6=N37Q_]W=/O#?B71099=
M?IQE/(HX2^A.OF>S1="R"O8=+"M/7 $[:DX'WH8R.(I]V# VU]5@(7#0S@HK
M_,EVYG?)#9@U.):]B2$2^V<A?_$"3%(O](M7"_2;IWSJ^JAKM*BN(47$TT\?
M(W3S',M&%-+V3<:<9FDGFDQ@"-U1%-JU+4$Z+6Z5Z;M.B$Y0]RN6OB ;59C\
M 2(7D/W0^I@P.%BX'2L><$BD$LF]Q$- ]8.'M4BG36AF#LYIW+HQ82Q&] %O
MN&@PH8CLA?85PI#D/[F5_)\Q$@H+NF^C^A&X%\+;.$/:?W(\41%(9S9&JC;B
M'Z-[H;Z5-"3_7]W*OUAC2G5RL4&L5>^OXGMA 4 ;,N'GCS/A]L5,%'1H[7TX
M%.F=%67FD!M_<^O&' O" QV3:.'#$;@7#M@X0]I??83VMRQHJWP&[9'N1<9U
MCPQ<R#Z-A3 Y()$^HO_!2-0J#Z$[+7XMZ?>]?=:L_RU31.WO",4_8N ^F88=
MHSJMMY4LJ+.C3#<EE:=^3/U $=#';<@>Z&TA#&KN*)]-B4TU?8'HC 5X]RO>
MUXE^!.V!ZC;&H.R.<MJ4V5R0"(G]@OC- \LQM@?"6RF#RCO*:%-JCV@W"W00
M9$72U7G-!@!%>N!#'7/0#D<9;LIPQGPN=+[W>K]ORF-]UNZG/*B]!-06[($U
MS?Q!@QQEORG/21 (+&7VQ\0UKK/% N^!&1!KT )'*2_$[N(T"RYZ:<%%O06.
M,E^(W>5I%ESVTH++^L=@CK+@$KNI?GDO'OD6>/H(@/LC_Q%G4'RG*7#&+8GF
M7LP%?R'I9H<F!XY*],<&&W'0"Z=I<MY/TNE"F[,@1?9'^R)A4'.G:7)&;,ZE
M0O2_9-,T.[7A^Z-_E3;H@J.L.>L1YC8*M.RD!.FTUE6FH+R.4F-SS9D(C.!N
M741T6]QCHJ"VCO+<;[H..E]S5GL/^1C5:8VM9$&=7:6K9I^1!(>'P\>=5K;,
M$I344?KYNR!*\S%KFV.6W4&R;4/16"NTTU+#C$'9':6<"TZ)KQ5BX7<=AR"(
MVC6OXCHM.$ 74OMMMBHTJST7V/0!K"?YR6(@LUE1W*]6T$@-XSNM?@-MT 5'
M:>81O9F4,1:G>E$IU2='[.1!7QREG OLQWJ@W(\OEH]F'RXP$AVA.JV[E2RH
MLZ,T\P=_%,A\K\9B'RTYA;<P6("=5AOB"PKN**,LL;)+78)T6N0J4U!>1QEE
M?I+=[OPU8B&&5W38D)T6&R0,:NXHTWP=V,)68W78I[$Z;#%6.\HT<U+I0F5]
MWMTO*0D1O".JID OU(=X@T8XRD_3_2HSMN(B2EC=Z1=V"ZS03HL/,P9E=Y2?
M3N* *!RD!.\(0\S7R=PA*. .05.I;IO1ACSDBRVP]WM4\3NF]%?&MVR!D>0,
M!VEB4?>T BC2:4>:F8-V.'UR^B].8Z:02);<"N#<L$)[(+^-,2B[TX>DV;+R
MPY7+!!77JF\OT0,3:HB#7CA]>#IC"@OD*_*"OR*%,KYU7MA+],"+&N*@%TX7
M'B<GZE3'$_+ZM0,E8 ^4K_(%!7>ZWG@1(4J_Q%('(&O'GQ*P!X)7^8*".UU1
M?!MA$>IA\!^";]4ZV\A8)[RU0 \,@'F#1CA=.7R[>]U8G6ZMJW6A@NZ#!7;2
MH/Z.=\I.?-\L-4GG!"Q  G  QG?:@P;:H N.TN1[M<:B."M+J)E@ZA:"-)7J
MM".MR$.^?'*:)A>WN==>E@NX3FL/T 75=IH%S^,E)?X=Y:AVWE^ ]4#K8[:@
MU$XSWR^(/8MXH_S]7' ?8_-@2![.R1;)5ZL*>F!/^SA X]QNQ4V^0C+Y<L/%
M&@DL[V.5_&<%S;;VQD5-N1[8U$@?=,?QMU#)URU[./BR?S!?,6D6;SSBG?JB
M&WJNGUPU%N^T5Z=% 5I62+T_>T<!ZN:?]6?9<?/+_,L+?>1_4$L#!!0    (
M  Q BEIG4='PE@H  )B%   4    9VYW+3(P,3DP,3 Q7VQA8BYX;6S-G5UO
MX[@5AN\+]#\0[DT+C..) Q1(,-E%QI,4QF:3;.S9;;LH%K3$.$)DTJ#DQ/[W
M)251ED@>24E1DG.1<<3W4"_%)R3U=?SEQ_TF1:^$9PFCEZ/3D\\C1&C$XH2N
M+T??%^.KQ6P^'Z$LQS3&*:/D<D39Z,<?_ORG+VE"7R[DCQ7."!+UT.QBGR67
MH^<\WUY,)F]O;R=O9R>,KR?3SY]/)__\^781/9,-'B=4UA>1D8J2M=CB3L_/
MSR=%J9(:ROV*IVH?9Q-EIZY9E"8=^H:3++G("GNW+,)Y<3AZ=X- A?QMK&1C
MN6E\.AV?G9[LLW@DCAX2_\HCR%E*'LD3*IIYD1^VXA!GR6:;2E/%MF=.GNQF
M4LXG,GY"R1KG))8[.I<[.OV[W-%?JLVW>$72$9+*[X]SL%WGK;JJH(EKLP^$
M)RR^IA]SK4=[LK_(,<__AP8TXYTW8<ERG'[(?#/2N>T[\K$C?HQS?Z3%P$L^
M=J0;D?\7V[EI^=V'UWY<4[GQ5GQJ623[G-"8Q,JDK*)C!"[V4$P,5=UU[2QJ
MU9O*T9QQL^V9J+>H,R/1R9J]3F*2B+JG9_+#6'XHFBU^^6/&Q QYM<IRCJ-<
MU50TXW)D*9_HEJ3RBBM?F$<]C:L4DXB)J6F;C]/R,);A3YQMK+NM6LTLA7^D
MJSJ^/"QB%X#1EHR3C.UX1-[5*TVWT%&J'&U2H9!+#4+'WQ>C'PH-^EVI_O-E
M<JS%04=_8]%N0VB^%#5:6M N=M7--E.JEYME072RQ9#>QTJ"I,9Q!U^)'<=R
MYS<I7EOL:^6NNMAJ2_5QJS"(3K8YTGNYUB I\M7-WT@6\60KE_-=[6C)G'>Z
MQ:31]PU-6 B8QF 2&EI/ _LC62=R:I$6Q!H[)W)CQS &Z%T/_9VV];G *@X"
MFB$.P=FB&83J*$\<75&ZP^DCV3+>A4];YIH:FTD=EJ8F*$8LQD T2BTJQ9Z(
M^&4GSM@)3P^]4!A*UUP 5G4T-%E0=-B]@8#4<K^,+#FF62('L%Y(3*GSTPW
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
M%     @ #$"*6O;P7C]J+P  $YL"  L              ( !     &5X:%\Y
M.3$N:'1M4$L! A0#%     @ #$"*6L:_44LD#@  A3P   X
M ( !DR\  &8X:U\P-# X,C4N:'1M4$L! A0#%     @ #$"*6H4E5ZNP @
MU0L  !               ( !XST  &=N=RTR,#$Y,#$P,2YX<V102P$"% ,4
M    "  ,0(I:K^]J@5$(  "'9   %               @ '!0   9VYW+3(P
M,3DP,3 Q7V1E9BYX;6Q02P$"% ,4    "  ,0(I:9U'1\)8*  "8A0  %
M            @ %$20  9VYW+3(P,3DP,3 Q7VQA8BYX;6Q02P$"% ,4
M"  ,0(I:;,% U?<&  #V5@  %               @ $,5   9VYW+3(P,3DP
A,3 Q7W!R92YX;6Q02P4&      8 !@!Y 0  -5L

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>17
<FILENAME>f8k_040825_htm.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:dei="http://xbrl.sec.gov/dei/2023"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:xlink="http://www.w3.org/1999/xlink">
    <link:schemaRef xlink:href="gnw-20190101.xsd" xlink:type="simple"/>
    <context id="Form8K">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000875582</identifier>
        </entity>
        <period>
            <startDate>2025-04-10</startDate>
            <endDate>2025-04-10</endDate>
        </period>
    </context>
    <unit id="USD">
        <measure>iso4217:USD</measure>
    </unit>
    <unit id="Shares">
        <measure>shares</measure>
    </unit>
    <unit id="USDPShares">
        <divide>
            <unitNumerator>
                <measure>iso4217:USD</measure>
            </unitNumerator>
            <unitDenominator>
                <measure>shares</measure>
            </unitDenominator>
        </divide>
    </unit>
    <dei:EntityCentralIndexKey contextRef="Form8K" id="ixv-142">0000875582</dei:EntityCentralIndexKey>
    <dei:AmendmentFlag contextRef="Form8K" id="ixv-143">false</dei:AmendmentFlag>
    <dei:DocumentType contextRef="Form8K" id="ixv-163">8-K</dei:DocumentType>
    <dei:DocumentPeriodEndDate contextRef="Form8K" id="ixv-164">2025-04-10</dei:DocumentPeriodEndDate>
    <dei:EntityRegistrantName contextRef="Form8K" id="ixv-165">NORTHERN TECHNOLOGIES INTERNATIONAL CORPORATION</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode contextRef="Form8K" id="ixv-166">DE</dei:EntityIncorporationStateCountryCode>
    <dei:EntityFileNumber contextRef="Form8K" id="ixv-167">001-11038</dei:EntityFileNumber>
    <dei:EntityTaxIdentificationNumber contextRef="Form8K" id="ixv-168">41-0857886</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1 contextRef="Form8K" id="ixv-32">4201 Woodland RoadP.O. Box 69</dei:EntityAddressAddressLine1>
    <dei:EntityAddressCityOrTown contextRef="Form8K" id="ixv-169">Circle Pines</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince contextRef="Form8K" id="ixv-170">MN</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode contextRef="Form8K" id="ixv-171">55014</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode contextRef="Form8K" id="ixv-172">763</dei:CityAreaCode>
    <dei:LocalPhoneNumber contextRef="Form8K" id="ixv-173">225-6600</dei:LocalPhoneNumber>
    <dei:WrittenCommunications contextRef="Form8K" id="ixv-174">false</dei:WrittenCommunications>
    <dei:SolicitingMaterial contextRef="Form8K" id="ixv-175">false</dei:SolicitingMaterial>
    <dei:PreCommencementTenderOffer contextRef="Form8K" id="ixv-176">false</dei:PreCommencementTenderOffer>
    <dei:PreCommencementIssuerTenderOffer contextRef="Form8K" id="ixv-177">false</dei:PreCommencementIssuerTenderOffer>
    <dei:Security12bTitle contextRef="Form8K" id="ixv-178">Common stock, par value $0.02 per share</dei:Security12bTitle>
    <dei:TradingSymbol contextRef="Form8K" id="ixv-179">NTIC</dei:TradingSymbol>
    <dei:SecurityExchangeName contextRef="Form8K" id="ixv-180">NASDAQ</dei:SecurityExchangeName>
    <dei:EntityEmergingGrowthCompany contextRef="Form8K" id="ixv-181">false</dei:EntityEmergingGrowthCompany>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
</SEC-DOCUMENT>
